ソフトウェア開発においては、バージョン管理システムが必須ですが、世の中には沢山のバージョン管理利ステム(VCS) がありますね。
まとめてみました。
目次
SCCS
Source Code Control System(SCCS)は、世界初のソースコードバージョン管理システム。
Visual Source Safe/TFS チームファウンデーションサーバー
Microsoft Visual SourceSafe (VSS) は、マイクロソフトが開発し販売していたバージョン管理システムです。
現在の後続製品は Team Foundation Server(TFS、チームファウンデーションサーバー)です。
CVS (読み方はシーブイエス)
Concurrent Versions System(コンカレント・バージョンズ・システム、並行バージョンシステム)は、通常CVS(シーブイエス)と略されます。
テキストファイルの変更を記録し管理するバージョン管理システムで、フリーソフトウェアです。
2000年代の前半まで、多くのオープンソースで使われました。
ディレクトリの移動が出来ない (フォルダ名の変更ができない) などの制約がありましたが、速度が速い、過去との比較が容易などの特徴がありました。
Subversion (読み方はサブバージョン)
Subversion(Apache Subversion)は、さまざまなソフトウェアの開発現場において広く使われているソースコード管理システムです。
CVSとコマンドの互換性があり、また、CVSの制約でもあったフォルダ名の変更も可能でした。
2005年ごろまで主流のバージョン管理システムでした。
BitKeeper (読み方はビットキーパー)
BitKeeperは、商用のバージョン管理システムでした。
初期のLinuxカーネルを管理していたことで有名です。
2016年5月にオープンソースとして公開されました。
Mercurial (読み方はマーキュリアル)
Linuxカーネル開発者の一人でもあったMatt Mackallが開発した、BitKeeperに代わる分散型バージョン管理システムです。
クロスプラットフォームの分散型バージョン管理システムで、Pythonで実装されています。
MozillaのソースコードはMercurialで管理されています。
Git (読み方はギット)
Git(ギット)は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。
Linuxカーネルのソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されています。
Gitのインストールについては以下をご覧ください。
GitのラッパーであるTortoiseGitについては以下をご覧ください。
Perforce (読み方はパーフォース)
Perforce は、商用のプロプライエタリなバージョン管理システムです。
Christopher Seiwaldが1995年に創設した Perforce Software, Inc. が開発しました。
ゲーム会社ではよく使われています。
Perfoceは日本では、東洋テクニカが販売しています。
↓Perforceの公式サイト
バージョン管理システムのシェア
現在の主流はGitでよいと思います。
Graph from Google Trends. See an interactive version here.
コメント