Git(ギット)。プログラムソースコードやサイトコンテンツなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。

Gitとは

Git(ギット)。プログラムソースコードやサイトコンテンツなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。

基本情報

概要

Git(ギット)とは、プログラムソースコードやサイトコンテンツなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。

Gitは、Linuxカーネルの生みの親「Linus Torvalds」氏が、Linuxカーネルの巨大プロジェクトにおいて、ソースコードを効率良く管理するために開発したものです。巨大プロジェクトにも対応できるように、動作速度に重点が置かれています。

Gitの最大の特徴は、「分散型」である点です。まず、ローカルPCの各ユーザのワーキングディレクトリに、「全履歴を含んだリポジトリの完全コピー」(ローカルリポジトリ)が作成されます。
リポジトリとは、ファイルやディレクトリの状態が記録される管理ファイルのようなものです。変更履歴を管理したいディレクトリをリポジトリの管理下に配置することで、そのディレクトリ内のファイルやディレクトリの変更履歴を記録することができます。
つまり、ネットワークに接続していない状態であっても、このローカルリポジトリに対して、コードの変更履歴保存(コミット)や、過去履歴確認などのほとんどの作業を行うことができます。これが「分散型」と呼ばれる理由となっています。
従来のバージョン管理ツールは、ネットワーク接続がほぼ必須であったため、この分散型のインパクトは大きいものがあります。

似たような名前で、「GitHub(ギットハブ)」というものがあります。GitHubは、このGitの仕組みを利用して、世界中のエンジニアが、プログラムコードやデザインデータなどを保存や公開できるようにしたウェブサービスです。
MicrosoftやGoogleのエンジニア達も使用していると言われています。OSSの公開などに使われることも多く、急拡大しています。

TOPに戻る

主な特徴

【高速】
Gitは、当初からスピードとパフォーマンスを最重要視して、高速かつスケーラブルになるよう開発されています。ある調査では、従来のバージョン管理システムと比較して10倍~100倍高速に動作するという結果が出ています。

【高機能】
基本的なバージョン管理機能のほかに、コミット取り消し(ロールバック)、複数コミットを1つのコミットとして実行するなど、さまざまな機能を備えています。また、集中型バージョン管理システム「Subversion」と連携できる機能も用意されています。

【完全性】
Gitに取り込まれるすべては、格納される前にチェックサムが取られ、その後、そのチェックサムで照合されるようになっています。つまり、Gitに認知されずにファイルの変更を行うことは不可能となっていて、この機能はGitの哲学に不可欠なものになっています。

TOPに戻る

同様製品(概要情報)

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Subversion」、「CVS」など。

TOPに戻る

導入事例

Gitについて近年では、高機能かつ高速という点で、世界での利用ユーザーが爆発的に増えていて、GitHubと合わせて「バージョン管理のデファクトスタンダード」になりつつあります。「Ruby on Rails」をはじめとする世界中の数多くのOSSプロジェクトで利用されています。また、FacebookやAmazonなどの大手ネット関連企業も利用しています。

TOPに戻る

ライセンス情報

Gitのライセンスは、GPLv3(GNU General Public License Lv3)です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

TOPに戻る

ダウンロード

ダウンロードページ

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

Git最新TOPICS

【OSS】Microsoft、「Git」用仮想ファイルシステム「Git Virtual File System(GVFS)」発表---「git checkout」の時間が3時間から30秒に(2017年02月09日 11:03)

Microsoftが、仮想ファイルシステム「Git Virtual File System(GVFS)」を発表した。 【Gitとは】 分散型バージョン管理システム https://www.ossnews.jp/oss_info/Git 【GVFSとは】 ・Gitで大量ファイルを管理する場合の処理の遅さを解消するために開発 ・リポジトリ下のファイルシステムを仮想化 ・大量のファ...

Git最新CLOSEUPコラム

  • オープソース書籍(サイド)

OSS×Cloud ACCESS RANKING

  • OSSNEWSに広告を掲載しませんか?

facebook

twitter