RCS,即版本控制系统,是一套程序,用于跟踪文本文件的更改并控制工作组环境中对文件的共享访问。它通常用于维护源代码模块。它也适用于跟踪文档文件的修订。
RCS 由 Walter F. Tichy 和 Paul Eggert 编写。已移植到 Linux 的最新版本是 RCS 5.7 版。还有一个半官方的线程版本可用。本 HOWTO 中的大部分信息取自 RCS 的 man 手册页。
RCS 包括 rcs(1)
程序,用于控制 RCS 归档文件属性;ci(1)
和 co(1)
,用于将文件检入和检出 RCS 归档;ident(1)
,用于按关键字标识符搜索 RCS 归档;rcsclean(1)
,一个用于清理未被使用或未更改文件的程序;rcsdiff(1)
,它运行 diff(1)
来比较修订;rcsmerge(1)
,它将两个 RCS 分支合并到单个工作文件中;以及 rlog(1)
,它打印 RCS 日志消息。
由 RCS 归档的文件可以是任何格式的文本,或者如果是二进制文件,则用于生成更改文件的 diff
程序可以处理 8 位数据。文件可以选择性地包含标识字符串,以帮助 ident(1)
进行跟踪。RCS 使用实用程序 diff(1)
和 diff3(3)
来生成修订之间的更改文件。RCS 归档由文件的初始修订版(版本 1.1)和一系列更改文件(每个修订版一个)组成。每次使用 co(1)
从归档中检出文件、编辑并使用 ci(1)
检入归档时,版本号都会递增,例如,对于后续修订,版本号会变为 1.2、1.3、1.4 等等。
归档本身通常位于 ./RCS
子目录中,尽管 RCS 还有其他归档存储选项。
有关 RCS 的概述,请参阅 rcsintro(1)
手册页。