原始碼控制系統是一個必須能管理那些在軟體計劃發展時原始碼所做的改變。軟體開發者需要一個完整的原始碼改變歷史紀錄, 以便於在發生問題時,能夠追溯到以前穩定的版本。 既然原始程式碼對於任何的軟體計劃與開發,都是花時間與金錢中最關鍵的部分,所以花時間藉由使用原始碼控制系統像 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 和其他檔案。