原始码控制系统是一个必须能管理那些在软体计划发展时原始码所做的改变。软体开发者需要一个完整的原始码改变历史纪录, 以便於在发生问题时,能够追溯到以前稳定的版本。 既然原始程式码对於任何的软体计划与开发,都是花时间与金钱中最关键的部分,所以花时间藉由使用原始码控制系统像 CVS 和 RCS 来安全的保护(safe-guarding)原始程式码是非常重要的。
CVS (Concurrent Version Control System) 是一个能让很多程式开发者同时做软体开发的非常强大工具。它使用了RCS 的档案规定格式但多了一层像应用程式介面的包装,架在 RCS 的上层。
(译注: RCS 是较老的版本控制,一个受 RCS 管制的档案看起来是这样子的 proj1.c,v ,CVS 沿用了一些 RCS 的规定。)
CVS 能够纪录你的档案的历史纪录( 通常是原始程式码,但是其他型态的档案则不一定)。 CVS 只存了不同版本中档案的差异,而不是你所建立的每个版本中的每个档案。 CVS 也保持了一个何时,何人更改档案,为什麽更改档案等等不同观点的历史纪录。
CVS 对於软体的发行和多人同时更改目前原始码的管理是非常的有帮助。 他并不只是要对单一目录下的档案提供版本控制, 相反的,CVS 更提供了多层有组织的目录档案的版本控制。 在这个目录下除了你的原始程式码外,还包含有一个 CVS 所建立的改版控制目录与档案。
这些目录与档案最後被合并在一起形成一个软体的发行。
CVS 能被使用在 "C", "C++", Java, Perl, HTML 和其他档案。