1.1 CVS 是什么?
cvs 是一个版本控制系统。使用它,可以记录下你的源文件的历史。 例如,修改软件时可能会不知不觉混进一些 bug,而且可能过了很久你才会察觉到它们的存在。有了 cvs,你可以很容易地恢复旧版本,并从中看出到底是哪个修改导致了这个 bug。有时这是很有用的。 你当然可以把曾经创建的每个文件的所有版本都保存下来。但这会浪费大量的磁盘空间。而 cvs 用一种聪明的办法把一个文件的所有版本保存在一个文件里,仅仅保存不同版本之间的差异。 如果你是项目开发组的一员,cvs 也会帮助你。除非极为小心,成员之间很容易互相覆盖文件。一些编辑器,如 gnu Emacs,会保证同一时间内同一文件绝不会被两个人修改。不幸的是,如果有人用了另外的编辑器,这种保护就没用了。 cvs 用隔离开不同的开发者解决了这个问题。每个开发者在他自己的目录里工作,等每一个开发者都完成了他们自己的工作后,cvs 会将它们合并到一起。 cvs 最初由 Dick Grune 在 1986 年 12 月以 shell 脚本的形式发布在 comp.sources.unix 的新闻组第 6 卷里。虽然当前的 cvs 中没什么代码来自于这些 shell 脚本,但许多 cvs 的冲突解决算法是从它们来的。 1989 年 4 月,Brian Berliner 设计了 cvs 并编写了代码。之后 Jeff Polk 帮助 Brian 设计了 cvs 模块和销售商分支支持。 你可以从好多渠道得到 cvs,包括从因特网上自由下载。有关下载 cvs 和其它与 cvs 相关的话题,请访问下面网址: http://www.cvshome.org/
有一个关于 CVS 的邮件列表,名叫 info-cvs@gnu.org。写邮件到 info-cvs-request@gnu.org 来订阅或退订。如果你更喜欢新闻组(Usenet),在 news:gnu.cvs.help 有一个 info-cvs@gnu.org 的单向镜像(发送到邮件列表的邮件会自动转发到新闻组,反之则不行)。 news:comp.software.config-mgmt 比较适合于讨论 cvs(还有其它一些配置管理系统)。将来,可能会创立一个 comp.software.config-mgmt.cvs,但那要取决于在 news:comp.software.config-mgmt 上有足够的 cvs 讨论。
你也可订阅 bug-cvs@gnu.org 邮件列表,详见 BUGS。要订阅它可以发邮件到 bug-cvs-request@gnu.org。对应 bug-cvs@gnu.org 有一个双向的新闻组镜像(发在新闻组的信息会自动转到邮件列表,反之亦然)名为 news:gnu.cvs.bug。