我在几个项目中看到开发人员在源代码文档中包含类似
$Revision$
的内容。我认为它们是某些工具的宏或环境变量,但我不知道如何使用它们。
我有兴趣将此功能添加到我的下一个项目中。我通常使用 TextMate、git 和 doxygen。有什么建议吗?
是:建议:不要这样做。
关键字扩展可以使用 gitattribute 过滤器来完成,如“Git 相当于 subversion 的 $URL$ 关键字扩展”中所示,但这会在数据中引入元数据,这通常会使合并比实际情况复杂得多。
您可以在这个(冗长的)答案中看到“每个开发人员应该知道的基本clearcase概念是什么?”关于“嵌入式版本号 - 好还是坏?”的所有争论。
除非你有一个好的合并管理器来忽略这些特殊值,否则你会遇到“合并地狱”。
而对于 Git,正如“Git 如何解决合并问题?”中详细介绍的,合并是非常基本的。没有花哨的合并管理器。
$Revision:$
(“:”是必需的)由 RCS 和 CVS 使用。其他一些系统也有类似的功能,但似乎更现代的系统没有。
使用更改文件的提交后挂钩和脚本后。还有其他方法,如果很高兴,因为我发现了这个:
创建文件 .git/info/attribute
# use keyword replacements
*.py ident
*.c ident
*.cpp ident
*.h ident
*.txt ident
*.md ident
# eof
现在在源代码中使用它,就像使用 SVN 一样:
# $Rev: $
# $Id: $
再次提交并结帐,有惊喜!