バージョン管理システム (VCS) シェア比較 (SCCS、VSS、CVS、Subversion、Mercurial、Git)

ITで知っておくべき知識
スポンサーリンク

ソフトウェア開発においては、バージョン管理システムが必須ですが、世の中には沢山のバージョン管理利ステム(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をWindowsクライアント・CentOS 7サーバーにインストールしてみました
このたび、GitをWindowsクライアント・CentOS 7サーバーにインストールしてみました。 インストール手順と簡単なリポジトリの操作方法をまとめました。 GitがSubversionに取って代わりつつある 現在、バー...

 

GitのラッパーであるTortoiseGitについては以下をご覧ください。

Tortise Git (トータスGit、トータスギット) とは?亀のように遅いGitのクライアントの使い方
Gitのクライアントのラッパーシェルである、TortoiseGitを使ってみました。 TortoiseGitの読み方は、トータスギットです。 TortoiseGit (トータスGit)とは GitはLinuxの創始者であるLinus T...

 

Perforce (読み方はパーフォース)

Perforce は、商用のプロプライエタリなバージョン管理システムです。

Christopher Seiwaldが1995年に創設した Perforce Software, Inc. が開発しました。

 

ゲーム会社ではよく使われています。

Perfoceは日本では、東洋テクニカが販売しています。

 

↓Perforceの公式サイト

Perforce Software | Development Tools For Innovation at Scale
Perforce Software provides enterprise-scale development tools. This includes version control, application lifecycle management, agile planning, and static analy...

 

バージョン管理システムのシェア

現在の主流はGitでよいと思います。

 

 

 

Graph from Google Trends. See an interactive version here.

 

コメント