【问题标题】:What are RCS Keywords?什么是 RCS 关键字?
【发布时间】:2011-07-12 14:03:12
【问题描述】:

在查看 svn 和 cvs 时,我不断看到 RCS 和 RCS 关键字。我不知道 RCS 是什么以及 RCS 关键字是什么。它们似乎是一个功能,但没有真正解释它们的作用。

【问题讨论】:

    标签: svn cvs rcs


    【解决方案1】:

    此功能是一种将文件中的某些标记替换为用户、日期、修订号等元信息的方法。 这些关键字来自 RCS (Revision Control System),一个基于单用户文件的版本控制系统,现在大概没人再使用了。

    Subversion (svn) 和 Concurrent Versioning System (CVS) 是集中式版本控制系统,而不是分布式版本控制系统 (DVCS)。

    • CVS 支持的关键字与 RCS 大致相同(因为 CVS 最初基于 RCS 并使用相同的后端文件格式),如果文件在签入时没有特别标记,则自动 replaces them。

    • Subversion(自我声明的 CVS 继任者)有一组类似的关键字 can be replaced,但不会自动替换它们,只有在您设置了一些文件属性来说明要替换哪些关键字时。 (对于某些关键字,语法与相应的 CVS 关键字有点不同。)

    著名的分布式 VCS-es 是 Git、Mercurial、Bazaar - 我只知道 Git,有关 Bazaar 和 Mercurial 的信息在 Google 上搜索。一般来说,由于这些通常使用当前树的哈希作为版本标识符,因此它们不能在提交时插入此标识符,但在结帐时执行此操作,如果有的话,并且仅在配置为这样做时。

    【讨论】:

    • 为了清楚起见,该功能是一种根据关键字自动用最新数据替换文件中某个标记的方法。
    • 是的,对不起。我假设人们会首先阅读 khmarbaise 的答案,因此我没有重复。
    • 不是单用户,而是基于文件系统的。
    【解决方案2】:

    Revision Control System 是一个基于文件而非项目等的版本控制系统。关键字用于将关键字的内容替换为版本控制系统的信息,例如在您的源代码中的修订。看看docs of RCS。参见标识符(示例摘自手册)。

       $Id$
    

    将被替换为:

      $Id: filename revision number date time author state locker $
    

    您可以在这里找到CVS Documentation。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-29
      • 2011-02-14
      • 2010-10-29
      相关资源
      最近更新 更多