Subversion在每次提交时作为版本增量器?

时间:2009-01-13 09:10:20

标签: svn versioning

我想在每次提交后将(最高)修订号更新到subversion存储库中的文件。

我想到了一个svn版本的关键字,但是只有在特定文件被更改后才会更新?

即。我有一个文件 version.php ,其中我有版本/修订号,但只在我的提交中更新 anotherfile.php - 这不会更改版本/修订信息 version.php 有。

提交挂钩是我唯一的选择吗?如果是,那么有什么例子吗?

4 个答案:

答案 0 :(得分:5)

听起来你想要某种$ GlobalRev $来获取你的文件中的全局修订号。

您可能需要查看的相应工具是svnversion

您可以将其用作提交后挂钩或在构建/部署过程中创建或修改全局版本文件。

另见“$ Global $ Rev $?”在this page

答案 1 :(得分:2)

我们不会在提交时执行此操作,我们会在部署过程中执行此操作。部署将最新代码(或特定修订版)与SVN修订版号一起提取,将版本放在relvent位置(AssemblyInfo,PHP版本文件等),然后将其部署到test / UAT / live / whatever。

答案 2 :(得分:1)

Hook脚本是唯一的选择。您有两个选项可以完成该任务:根据subversion handbook的建议验证version.php是否在预提交脚本中是最新的,或者在帖子中启动另一个提交更新您的版本文件 - 提交脚本。您不应该按照手册中的指示修改挂钩中的提交文件。

答案 3 :(得分:0)

Subversion使用存储库范围的修订版编号系统(请参阅“全局修订号”侧栏here),因此您的文件已被碰撞。