- 
  
1. 使い始める
- 1.1 バージョン管理に関して
 - 1.2 Git略史
 - 1.3 Gitの基本
 - 1.4 コマンドライン
 - 1.5 Gitのインストール
 - 1.6 最初のGitの構成
 - 1.7 ヘルプを見る
 - 1.8 まとめ
 
 - 
  
2. Git の基本
- 2.1 Git リポジトリの取得
 - 2.2 変更内容のリポジトリへの記録
 - 2.3 コミット履歴の閲覧
 - 2.4 作業のやり直し
 - 2.5 リモートでの作業
 - 2.6 タグ
 - 2.7 Git エイリアス
 - 2.8 まとめ
 
 - 
  
3. Git のブランチ機能
- 3.1 ブランチとは
 - 3.2 ブランチとマージの基本
 - 3.3 ブランチの管理
 - 3.4 ブランチでの作業の流れ
 - 3.5 リモートブランチ
 - 3.6 リベース
 - 3.7 まとめ
 
 - 
  
4. Gitサーバー
- 4.1 プロトコル
 - 4.2 サーバー用の Git の取得
 - 4.3 SSH 公開鍵の作成
 - 4.4 サーバーのセットアップ
 - 4.5 Git デーモン
 - 4.6 Smart HTTP
 - 4.7 GitWeb
 - 4.8 GitLab
 - 4.9 サードパーティによる Git ホスティング
 - 4.10 まとめ
 
 - 
  
5. Git での分散作業
- 5.1 分散作業の流れ
 - 5.2 プロジェクトへの貢献
 - 5.3 プロジェクトの運営
 - 5.4 まとめ
 
 
- 
  
6. GitHub
- 6.1 アカウントの準備と設定
 - 6.2 プロジェクトへの貢献
 - 6.3 プロジェクトのメンテナンス
 - 6.4 組織の管理
 - 6.5 スクリプトによる GitHub の操作
 - 6.6 まとめ
 
 - 
  
7. Git のさまざまなツール
- 7.1 リビジョンの選択
 - 7.2 対話的なステージング
 - 7.3 作業の隠しかたと消しかた
 - 7.4 作業内容への署名
 - 7.5 検索
 - 7.6 歴史の書き換え
 - 7.7 リセットコマンド詳説
 - 7.8 高度なマージ手法
 - 7.9 Rerere
 - 7.10 Git によるデバッグ
 - 7.11 サブモジュール
 - 7.12 バンドルファイルの作成
 - 7.13 Git オブジェクトの置き換え
 - 7.14 認証情報の保存
 - 7.15 まとめ
 
 - 
  
8. Git のカスタマイズ
- 8.1 Git の設定
 - 8.2 Git の属性
 - 8.3 Git フック
 - 8.4 Git ポリシーの実施例
 - 8.5 まとめ
 
 - 
  
9. Gitとその他のシステムの連携
- 9.1 Git をクライアントとして使用する
 - 9.2 Git へ移行する
 - 9.3 まとめ
 
 - 
  
10. Gitの内側
- 10.1 配管(Plumbing)と磁器(Porcelain)
 - 10.2 Gitオブジェクト
 - 10.3 Gitの参照
 - 10.4 Packfile
 - 10.5 Refspec
 - 10.6 転送プロトコル
 - 10.7 メンテナンスとデータリカバリ
 - 10.8 環境変数
 - 10.9 まとめ
 
 
- 
  
A1. 付録 A: その他の環境でのGit
- A1.1 グラフィカルインタフェース
 - A1.2 Visual StudioでGitを使う
 - A1.3 EclipseでGitを使う
 - A1.4 BashでGitを使う
 - A1.5 ZshでGitを使う
 - A1.6 PowershellでGitを使う
 - A1.7 まとめ
 
 - 
  
A2. 付録 B: Gitをあなたのアプリケーションに組み込む
- A2.1 Gitのコマンドラインツールを使う方法
 - A2.2 Libgit2を使う方法
 - A2.3 JGit
 
 - 
  
A3. 付録 C: Gitのコマンド
- A3.1 セットアップと設定
 - A3.2 プロジェクトの取得と作成
 - A3.3 基本的なスナップショット
 - A3.4 ブランチとマージ
 - A3.5 プロジェクトの共有とアップデート
 - A3.6 検査と比較
 - A3.7 デバッグ
 - A3.8 パッチの適用
 - A3.9 メール
 - A3.10 外部システム
 - A3.11 システム管理
 - A3.12 配管コマンド
 
 
1.5 使い始める - Gitのインストール
Gitのインストール
Gitを使い始める前に、まずはコンピューターでそれを使えるようにしなければなりません。 仮にインストールされていたとしても、最新バージョンにアップデートしておくとよいでしょう。 パッケージやインストーラーを使ってインストールすることもできますし、ソースコードをダウンロードしてコンパイルすることもできます。
| 
 注記 
 | 
 本書は、Git 2.0.0 の情報をもとに書かれています。登場するコマンドの大半は旧来のバージョンのGitでも使えるはずですが、バージョンによっては動作しなかったり、挙動が異なるものがあるかもしれません。ただし、Gitでは後方互換性がとてもよく維持されていますので、2.0以降のバージョンであれば問題はないはずです。  | 
Linuxにインストール
バイナリのインストーラーを使ってLinux上にGitと主な関連ツールをインストールしたいのであれば、大抵はディストリビューションに付属する基本的なパッケージ・マネジメント・ツールを使って、それを行なう事ができます。 もしFedoraを使っているのであれば、yumを使う事が出来ます:
$ sudo yum install git-all
もしUbuntuのようなDebianベースのディストリュビューションを使っているのであれば、apt-getを試してみましょう:
$ sudo apt-get install git-all
そのほかにも、いくつかのLinuxディストリビューション用のインストール手順がGitのウェブサイト http://git-scm.com/download/linux に掲載されています。
Macにインストール
いくつかの方法でGitをMacにインストールできます。 そのうち最も簡単なのは、Xcode Command Line Toolsをインストールすることでしょう。 それは、Mavericks (10.9)以降のバージョンであれば、'git’をターミナルから実行しようとするだけで実現できます。 もしXcode Command Line Toolsがインストールされていなければ、インストールするよう促してくれます。
最新バージョンのGitを使いたいのであれば、インストーラーを使うといいでしょう。 OSX用のGitインストーラーはよくメンテナンスされており、Gitのウェブサイト http://git-scm.com/download/mac からダウンロードできます。
あるいは、GitHub for Macの一部としてGitをインストールすることもできます。 GitHubが提供しているGUIのGitツールには、コマンドラインツールをインストールするオプションもあるのです。 このツールは、GitHub for Macのウェブサイト http://mac.github.com からダウンロードできます。
Windowsにインストール
Windowsの場合でも、いくつかの方法でGitをインストールできます。 最も公式なビルドは、Gitのウェブサイトからダウンロードできます。 http://git-scm.com/download/win にアクセスすると、ダウンロードが自動で始まるようになっています。 注意事項として、このプロジェクトはGit for Windowsという名前で、Gitそのものとは別のプロジェクトです。詳細については https://git-for-windows.github.io/ を参照してください。
もう一つ、Gitをインストールする簡単な方法として、GitHub for Windowsがあります。 GitHub for Windowsのインストーラーには、GUIとコマンドラインバージョンのGitが含まれています。 PowerShellとの連携がしっかりしていて、認証情報のキャッシュは確実、CRLF改行コードの設定はまともです。 これらについては後ほど説明しますので、ここでは「Gitを使うとほしくなるもの」とだけ言っておきます。 GitHub for Windowsは、 http://windows.github.com からダウンロードできます。
ソースからのインストール
上述のような方法ではなく、Gitをソースからインストールするほうが便利だと思う人もいるかもしれません。そうすれば、最新バージョンを利用できるからです。 インストーラーは最新からは少しですが遅れがちです。とはいえ、Gitの完成度が高まってきたおかげで、今ではその差はさほどでもありません。
Gitをソースからインストールするのなら、Gitが依存する以下のライブラリが必要です:curl、zlib、openssl、expat、libiconv もし、使っているシステムでyumが使えたり(Fedoraなど)、apt-getが使えたり(Debianベースのシステムなど)する場合は、それぞれ次のようなコマンドを使うと Git のバイナリをコンパイルしインストールするための必要最低限の依存ライブラリをインストールしてくれます。
$ sudo yum install curl-devel expat-devel gettext-devel \
  openssl-devel perl-devel zlib-devel
$ sudo apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
  libz-dev libssl-dev
なお、ドキュメントを doc、html、info 形式等で出力したい場合は、以下の依存ライブラリも必要になります(RHELやRHEL派生のディストリビューション(CentOS・Scientific Linuxなど)では、 EPELリポジトリを有効 にしてください。`docbook2X`パッケージをダウンロードするのに必要になります)。
$ sudo yum install asciidoc xmlto docbook2X
$ sudo apt-get install asciidoc xmlto docbook2x
さらに、Fedora・RHEL・RHEL派生のディストリビューションを使っている場合は、以下のコマンドを実行してください。
$ sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
バイナリー名が異なるために生じる問題を解消するためです。
依存関係のインストールが完了したら、次にタグ付けされた最新のリリース用tarballを入手しましょう。複数のサイトから入手できます。 具体的なサイトとしては、Kernel.org https://www.kernel.org/pub/software/scm/git やGitHub上のミラー https://github.com/git/git/releases があります。 どのバージョンが最新なのかはGitHubのほうがわかりやすくなっています。一方、kernel.orgのほうにはリリースごとの署名が用意されており、ダウンロードしたファイルの検証に使えます。
ダウンロードが終わったら、コンパイルしてインストールします:
$ tar -zxf git-2.0.0.tar.gz
$ cd git-2.0.0
$ make configure
$ ./configure --prefix=/usr
$ make all doc info
$ sudo make install install-doc install-html install-info
一度この手順を済ませると、次からはGitを使ってGitそのものをアップデートできます:
$ git clone git://git.kernel.org/pub/scm/git/git.git