System(コンカレント・バージョンズ・システム、並行バージョンシステム)は、通常CVS(シーブイエス)と略される、テキストファイルの変更を記録し管理するバージョン管理システム。フリーソフトウェアである。ソフトウェアの開発におけるソースコードを始めとしたテキストファイルの共有(保存、取出し)に使われる。テキストファイルの枝分かれした版を管理することができる。枝分かれ(並行ヴァージョン)の機能を使わなくても、ファイルの直線的な追加改変を追いかけるのに使うことができる。ダウンロードをする場合、サーバ上のファイルと自分の持っているファイルの差分を転送するだけで最新版を手にいれることができるので、開発途中のプログラムの配布にも使われる。通常、CVSサーバを用意してファイルの共有をする。CVSサーバにアクセスするCVSクライアント・プログラムは、コマンドラインのcvsを始め、GUIによるラッパーや、統合開発環境向けのプラグインが多数作られている。CVSは、ネットワークでの使用を考慮した最初のソースコード管理システムであって、フリーウェアだったので、1990年代を通じて広く利用された。新しいツールに取って代わられた。RCSのそれである)。$Id:$などのキーワードは、その名残である。RCSは、diffなどのUNIX系のテキスト処理プログラムの上に作られている。RCSは、マルチユーザーシステム(1台のコンピュータに、複数のダム端末が接続され、CPUやファイルシステムが共有されている)の上で、同じファイル/フォルダを共有した状態で使われたのに比べ、CVSではCVSサーバとして別のコンピュータ上に用意することもできる。同一ファイルを複数人で同時編集した場合のコンフリクトに対するアプローチも異なる。RCSはファイルをロックする事で同時編集を禁止する。対するCVSでは、RCSのような強固なロックメカニズムは、もたない。同時編集を許可する代りにコンフリクトが生じた場合、コミット時にマージ操作が必要とされる。欠点編集ファイル名の変更削除、ディレクトリ名の変更削除をうまく扱えない。異なる文字コード(JIS/SJIS/EUC)に対するサポートがない。基本的に個々のファイルの履歴はわかるが、リポジトリの履歴は簡単には知ることができない。バイナリーファイルの扱いが下手で、リポジトリサイズの増大につながる。分散リポジトリをサポートしない。アトミック・コミットをサポートしない。複数のファイルを同時にコミットした場合、CVSではそれぞれのファイルを(ごく短時間の間に)一つずつコミットしたものとして扱うため、アトミック性を満たすことができない。クライアント機能が内蔵されている。GUIフロントエンドとしてCervisiaが公開されている。CVSおよびSubversionリポジトリをブラウザ上で閲覧するためのツール。SourceForge.netによって採用される。Mozillaによって開発されたCVSリポジトリをブラウザ上で管理するためのツール。ソースコードをブラウザ上で検索・参照するためのツール。Bazaarなど多数のバージョン管理システムをサポート。Javaで書かれている。CVSリポジトリから情報を取得して、表やグラフを用いたグラフィカルなレポートを作成するJavaで書かれたツール。3.0のもとで利用可能です。プライバシーデスクトップ。