バージョン管理におけるリポジトリの管理方法の分類の1つで、作業者全員で1つのリポジトリを共有する方法です。
集中型のバージョン管理システムとして、Subversion などがあります。
集中型バージョン管理では、作業者全員がアクセスできる場所にリポジトリを1つ置きます。作業を始める前に、リポジトリの内容を手元の PC に保存します(チェックアウトなどと呼ばれる)。
普段の作業では、手元の PC で作業を進め、問題のない状態で区切りがついたら、自分がおこなった変更内容をリポジトリへ記録します(コミットやチェックインなどと呼ばれる)。リポジトリを共有しているので、問題がある状態のままコミットするとトラブルになります(コンパイルが通らないソースファイルをコミットすると、ほかの作業者の手を止めてしまうなど)。
ほかの作業者もまた同じ方法で作業を進めています。そのため、リポジトリにはほかの作業者の変更履歴が追加されているかもしれません。都合のいいタイミングで、新たに変更された情報をリポジトリから手元へ持ってくる操作(アップデートなどと呼ばれる)を行わなければなりません。
コミットの際には、自分の変更内容と、ほかの作業者の変更内容とが衝突する可能性があります。そうした場合には、両者の変更内容を確認しながら、適切に調整しなければなりません(どちらかの変更だけを活かすとか、互いの変更を問題ないようにまとめるとか)。このような作業をマージと呼びます。
集中型バージョン管理に対して、各作業者がそれぞれのリポジトリを保有する方法を、分散型バージョン管理と呼びます。近年の傾向として、分散型バージョン管理の方が主流になっています。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |