Mercurial&关键字分机:标记修订时更新关键字

时间:2015-11-05 09:15:24

标签: mercurial keyword mercurial-extension

我正在使用Mercurial和关键字扩展,我对它非常满意。期待一件事,扩展版本标签:

Version = {latesttag|nonempty}

所有关键字都会在每次签入时按预期进行扩展。但是当我标记修订版时,此时没有任何操作。我希望/想要扩展所有文件中的标签。现在,版本标记在下一次提交文件时得到更新/扩展。我想,我必须用钩子做这个,但我坚持这个。 有什么建议? 非常感谢你

罗兰

1 个答案:

答案 0 :(得分:0)

  • 您的过滤器什么都不做,因为对于没有标签的存储库`{latesttag}返回" null"文本串
  • 文件中的关键字有"此文件"范围,而不是全局,即仅反映上次更改文件时的状态,并且,对于标记(仅提交.hgtags),预期不会更改$Version$
  

所有关键字都会在每次检查时按预期展开

仅适用于此变更集中的文件 ,未触及包含的文件。查看repo中两个(最初相同的)文件的最终内容

  

当前版本的文件:$ Version $和$ Revision $

每个都分别提交了几次

>hg log file.txt -l 1
changeset:   5:3ceaea734895

>hg log file2.txt -l 1
changeset:   3:09939c9b8243

file.txt的

Current version of file: $Version: v 0.1 $ and $Revision: 3ceaea734895 $

FILE2.TXT

Current version of file: $Version: v 0.1 $ and $Revision: 09939c9b8243 $

如果要为每次提交更改所有文件中的关键字,则必须在每次提交时将问题包含在问题中(它可以是别名,使用commit -I