バージョン管理システム
バージョン管理システム(バージョンかんりしすてむ、version control system、VCS)
成果物のバージョン管理をするためのシステム
主に集中バージョン管理システム、分散バージョン管理システムの二つがある
そうじゃない分類に、ローカルバージョン管理システム?に分類されるシステムがあった(SCCS、RCS)
バージョン管理システムがあると
ファイルの状態がわかる
追加、変更、削除があるか
パーミッションの状態
ファイルの除外設定ができるので、どのファイルが除外すべきファイルかをシステムとして管理できる
管理対象かがわかる
管理したい対象なのか不要なファイルなのか
変更の適用、マージができる
更新履歴を残さないでよくなる
ブランチによる複数案件管理がしやすくなる
バージョン管理システムがないと
一つのファイルを複数人で編集したときに競合(コンフリクト)してるかの検出が大変?
最近のシステムにはそもそもロック機能はない
ファイルがそもそもの管理対象かどうかが属人的になる
ローカルバージョン管理システム
SCCS
RCS
集中バージョン管理システム
CVS
Subversion
Microsoft Visual SourceSafe(VSS)
ver6.0から中央管理リポジトリが作れるようになったらしい
分散バージョン管理システム
Darcs
Mercurial
Git
Bazaar
参考