使用Mercurial自动构建版本号
问题描述:
我们最近从SVN切换到Mercurial。我们还设置了一个CruiseControl.NET,用于运行自动构建,从源代码管理获取最新内容并构建应用程序。使用Mercurial自动构建版本号
在用于自动构建的CruiseControl.NET仪表板中,我们要显示版本号。显然,mercurial有这个十六进制版本号。
在使用Mercurial源代码管理系统时,处理CruiseControl.NET中版本号的常见标准是什么?十六进制值是用作吗?还有什么其他的选择?
答
一个伟大的选择是:
hg log -r . --template '{latesttag}-{latesttagdistance}-{node|short}'
哪,如果你的标记版本可以让你喜欢的东西:
1.0-10-0746c606103c
它读作“因为1.0哈希0746c606103c 10次修订版”。
我承认我不知道如何将这个值放入CruiseControl.NET中,但是如果你能得到它来调用这个命令,你将会有很好的价值。
答
如果 CruiseControl的总是使用相同的源回购和如果你不喜欢改写历史,你可以尝试使用其他模板关键字,{}转
转整数。版本库本地变更集版本号。