分散開発環境において,各開発者のローカル環境に全履歴を含んだ中央リポジトリの完全な複製をもつことによって,中央リポジトリにアクセスできないときでも履歴の調査や変更の記録を可能にする,バージョン管理ツールはどれか。
正答3
解説
正解は3です。
この問題は、各開発者が全履歴を含むリポジトリの複製を持つ、分散型バージョン管理ツールを問うています。
バージョン管理ツールには、中央のリポジトリだけが履歴を持つ集中型と、各自が完全な複製を持つ分散型があります。
【選択肢別解説】
1:× Apache Subversion(SVN)は、集中型のバージョン管理ツールです。
履歴は中央リポジトリだけにあるため、接続できないと履歴の参照やコミットができません。
2:× CVS(Concurrent Versions System)も、集中型のバージョン管理ツールです。
Subversionの前身にあたり、中央リポジトリへの接続が前提になります。
3:○ Gitは、分散型のバージョン管理ツールです。
各開発者のローカルリポジトリが全履歴を含む完全な複製なので、中央に接続できなくても履歴調査やコミットができます。
4:× RCS(Revision Control System)は、ファイル単位で履歴を管理する初期のツールです。
主に単一のマシン上で使うもので、リポジトリの完全な複製を各開発者が持つ分散型ではありません。
【ポイント】
分散型の代表はGitとMercurial、集中型の代表はSubversionとCVSです。
分散型ではローカルでコミットし、後でリモートリポジトリへプッシュして共有します。