我想知道是否有办法将 Mercurial 标签嵌入到我的 C/C++ 代码中。
基本上,我希望标记字符串(最终将成为版本号 (major.minor.rev))作为静态字符串自动插入到我的 C 代码的确定位置。
总体目标是在使用“-v”命令行参数执行时可以查询应用程序的版本号。任何不涉及尝试嵌入 Mercurial 标签的替代方法也将作为答案受到欢迎。
我在 Linux 环境中使用 Code::Blocks,因此该解决方案不能依赖 Visual Studio 功能。
最佳答案
您将需要 keyword extension为了允许关键字条目的扩展,它与 mercurial 捆绑在一起。
例如,要获得对 $Id$
的支持,您可以为您的 repo (.hg/hgrc
) 编辑 hgrc 并添加:
[extensions]
keyword =
[keyword]
# Enable expansion for the specific files
myfile.cpp =
# Enable for all .h files
**.h =
然后运行
hg kwexpand
扩展相关文件的关键字,或者
hg kwshrink
缩小关键字。您甚至可以通过添加 [keywordmaps]
条目来创建自己的关键字,例如
[keywordmaps]
User = {author|user}
注意:这会禁用内置关键字
可以找到有关扩展的更多详细信息 in the wiki .
关于c++ - 如何将 Mercurial 标签嵌入到我的 C/C++ 代码中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2253953/