我到处都能看到。在文档、网站、帮助屏幕中,您可以命名它。
为什么?
我也应该使用它吗?
多么?
发布于 2009-06-29 09:14:23
这可能是'$Id$‘的扩展版本,我认为它起源于RCS版本控制系统,并且已经在许多其他系统中继承或实现,尤其是CVS和SVN。
基本上,您将“$Id$”添加到源代码的某个位置,版本控制系统会将其扩展为一个标识字符串,其中包含每次签出时的当前修订。
然后,在查看源代码时,您可以提醒自己源代码来自哪个版本或分支。
就我个人而言,我不认为它有多大用处。
以下是关键字替换的CVS文档:http://ximbiot.com/cvs/manual/cvs-1.11.6/cvs_12.html
请注意,$Id$是可以使用的许多这样的字符串之一。
发布于 2009-06-29 09:30:55
标签可能来自CVS,表示该文件在CVS中的版本。开发人员在他的代码中插入$Revision$。提交后,CVS将其扩展为$Revision: 1.2.3$。在我看来,你绝对不应该使用它或它的朋友(比如$Id$),至少在正常的源代码中是这样。
如果你有一个更现代的源代码控制系统(SVN,Mercurial,git,monotone),整个树只有一个版本号,那么在构建中的某个地方保存一个包含该版本号的文件并不是一件坏事-它让你可以做一些事情,比如在这个页面的右下角,现在它写着"svn版本: 3772“。
但是如果你有像CVS这样的东西,其中每个文件都有自己单独的版本号,那么你最终会在每个文件中使用$Revision$ (或$Id$或其他任何东西)。随着时间的推移,这会导致混淆(例如,人们引用的版本号只引用一个文件),并导致合并错误,否则可能会有干净的合并(远程版本与您的本地版本具有不同的版本,合并出错)。
另外,任何以编程方式自动更改源代码的操作都应该以怀疑的态度看待。
发布于 2009-06-29 09:38:45
为什么?
它试图回答这样一个问题:“哪个版本的源代码与交付给客户的二进制文件相匹配?”它是如何工作的,其他人已经发表了评论。
我也应该使用它吗?
多么?
你需要它吗?您或您的开发人员经常问这个问题吗?你有多少次回答这个问题有困难?如果你已经有了像release-1.0,release-1.1等标签/分支,那么你很可能不需要它。
https://stackoverflow.com/questions/1057311
复制相似问题