网站版本控制的最佳做法?

时间:2020-03-05 18:45:44  来源:igfitidea点击:

网站版本控制的最佳做法是什么?

  • 哪种版本控制系统最适合这种工作?
  • 存在哪些专用工具?
  • 我还要问什么其他问题?

解决方案

回答

首先,我们可以并且应该使用版本控制系统,大多数系统将处理二进制文件,尽管与文本文件不同,我们不能合并两个不同的更改集,因此我们可能希望将系统设置为在更改这些文件时将其锁定(假设首先,这不是rcs的默认操作模式)。

对于网站而言,事情变得更加有趣的是,管理网站所需的文件,但这些文件实际上并不构成网站的一部分,最明显的例子是诸如.psd文件之类的东西,它们是从中生成网络图形的,而不会部署。

因此,我们为每个站点都有一个树,其中有两个文件夹:资产和站点。资产是站点中没有的东西,而站点恰好是站点。

我们必须注意的是,设计师倾向于拥有自己的"系统"来"版本化"图形文件(计算PSD中的层数)。我们不必一定要阻止他们这样做,但是我们确实需要确保他们也提交了每个更改。

还有其他问题吗?

部署。我们仍在致力于这一工作(-:但是我们正在变得更好(我现在对自己的工作感到更开心!)

墨菲

回答

我使用Subversion。
作为引用网站版本(生产,测试,开发)的一种简便方法,我使用了一个非常简单的技巧。我将修订号添加到站点上的某个位置(例如,在管理页脚中)。像这样的东西:

<?php print("$Revision: 1 $"); ?>

每次结帐(开发版本)或者导出(用于生产)时," 1"将替换为存储库中的修订号,例如,这样可以轻松地在测试服务器上设置客户版本。

回答

为了回应Christian Lescuyer的帖子,我们还需要启用文件中带有该行的" svn:keywords"属性。除非设置了该属性,否则Subversion不会在文件中查找$ Revision $之类的关键字。

另外,如果像他的示例一样使用PHP,则可能需要将$ Revision $放在单引号字符串而不是双引号字符串中,以防止PHP尝试将$ Revision解析为PHP变量并引发警告。 :)