「Gitとは」の編集履歴(バックアップ)一覧に戻る
Gitとは - (2012/04/21 (土) 00:48:58) のソース
Git(ぎっと)はオープンソースの分散型バージョン管理システムです。ファイルの変更履歴を管理します。 GPLライセンスの下で公開されていて、自己責任の下で、だれもが Git を使用することができます。 * Git は最近注目のバージョン管理システム バージョン管理システムというと、CVS や Subversion などが有名でしたが、 Git は最近注目のバージョン管理システムです。 Git の産みの親は Linux kernel の開発者であるあの Linus Torvalds 氏です。 ご存知のように Linux kernel は全世界に多数の開発者がいる とても大きなプロジェクトですが、その Linux kernel のソース管理に Git が使用 されています。 また、X.org や Ruby on Rails、Perl、Google Android なども Git を使用しており、 特にオープンソースのプロジェクトのバージョン管理に Git が使用されるケースが増えています。 Google トレンドで確認してもわかるとおり、Git の知名度はかなり上昇し、subversionを凌ぐようになりました。 http://www.google.co.jp/trends?q=git%2Csubversion%2Cmercurial%2Cdarcs&geo=jp http://www.google.co.jp/trends?q=git%2Csubversion%2Cmercurial%2Cdarcs * Git の特徴 Git の特徴は、"分散型"のバージョン管理システムであるということ、 それから何といっても、 Linux kernel の開発で培われたノウハウが凝縮された 高機能なバージョン管理システムであるという点です。 "分散型"というのは、リポジトリが1箇所に集中していないという意味です。 subversionなどは1箇所のリポジトリに開発者全員が変更履歴を記録する方式ということから リポジトリは1箇所に”集中"しています。 一方、分散型では開発者一人一人が自分専用の作業リポジトリを持ってそこにコミットをします。 そしてコミットした内容をpush/pullという仕組みを使ってみんなで共有してソフトウェアの開発を 進めていきます。リポジトリが1箇所に集中せず、開発者ごとにリポジトリが分散されているから 分散型ということです。 分散型の強みはリポジトリをインターネット上で公開すればだれでも そのリポジトリを複製して開発に参加できるという点にあります。 そこにはCVSやsubversionのような"コミッター"と"それ以外"といった階級差別はありません。 だれもがリポジトリを複製して開発に参加でき、その変更が優れていれば、みんながその結果を pullしてくれます。OSSプロジェクトで、ここ数年で爆発的にGitが使われるようになったのは そういう理由があります。 なお、分散型のバージョン管理システムには、Git の他にも Bazzar、Mercurial、monotone、darcs などがあります。Git はそのなかでも大変良く使われているツールです。 Gitは難しいという人もいますが、そんなことはありません。 ぜひGitを使ってみてください。 ---- - Linuxカーネル開発プロジェクトで自分たちのソース管理をする為に開発されたツール - 2005年4月に開発スタート (Linusがgitを開発した経緯などはwikipediaを参照) - 分散型SCM - 高度なブランチ管理機能 - 十分なパフォーマンス(大規模ソースから、小規模まで) -----