Pro Git
Free

Pro Git

By Scott Chacon
Free
Book Description

Git は、 Linux カーネル開発のために Linus Torvalds さんが2005年に公開した分散型バージョン管理システムです。スタートアップのような小規模組織からGoogle、 IBM のような巨大企業で、また数多くのオープンソースプロジェクトで利用されています。現在の Git 開発は、濱野純さんを中心としたコミュニティによって非常に活発に行われています。



本書 Pro Git は、2009年に Apress から出版された、Git の解説書です。著者の Scott Chacon さんは、GitHub 社で活躍中の Ruby プログラマー、Git のエバンジェリストであり、Git 公式サイトの管理者でもあります。



本書の内容は、出版以降も有志により頻繁に更新されており、公式サイト上で全て閲覧可能です。Git 利用中に生じた問題の解決法を探す過程で、公開されている本書の内容を目にした方も多いのではないでしょうか。



サイトの目的
本書はまた、有志による翻訳作業も活発に行われており、ドイツ語、中国語、フランス語、日本語はじめ、多くの言語に翻訳され、公式サイト上で公開されています。しかし、電子書籍版の方は更新が進んでおらず、公式サイト上で公開されているのは現在も英語版(2009年7月版)のみです。



当サイトでは、上記のような状況の公式サイトを補完する目的で、Pro Git 日本語版電子書籍(PDF/EPUB/MOBI)の最新版を提供していきます。

Table of Contents
  • 使い始める
    • バージョン管理に関して
      • ローカル・バージョン管理システム
      • 集中バージョン管理システム
      • 分散バージョン管理システム
    • Git略史
    • Gitの基本
      • スナップショットで、差分ではない
      • ほとんど全ての操作がローカル
      • Gitは完全性を持つ
      • Gitは通常はデータを追加するだけ
      • 三つの状態
    • Gitのインストール
      • ソースからのインストール
      • Linuxにインストール
      • Macにインストール
      • Windowsにインストール
    • 最初のGitの構成
      • 個人の識別情報
      • エディター
      • diffツール
      • 設定の確認
    • ヘルプを見る
    • まとめ
  • Git の基本
    • Git リポジトリの取得
      • 既存のディレクトリでのリポジトリの初期化
      • 既存のリポジトリのクローン
    • 変更内容のリポジトリへの記録
      • ファイルの状態の確認
      • 新しいファイルの追跡
      • 変更したファイルのステージング
      • ファイルの無視
      • ステージされている変更 / されていない変更の閲覧
      • 変更のコミット
      • ステージングエリアの省略
      • ファイルの削除
      • ファイルの移動
    • コミット履歴の閲覧
      • ログ出力の制限
      • 日時にもとづくログ出力の制限
      • GUI による歴史の可視化
    • 作業のやり直し
      • 直近のコミットの変更
      • ステージしたファイルの取り消し
      • ファイルへの変更の取り消し
    • リモートでの作業
      • リモートの表示
      • リモートリポジトリの追加
      • リモートからのフェッチ、そしてプル
      • リモートへのプッシュ
      • リモートの調査
      • リモートの削除・リネーム
    • タグ
      • タグの一覧表示
      • タグの作成
      • 注釈付きのタグ
      • 署名付きのタグ
      • 軽量版のタグ
      • タグの検証
      • 後からのタグ付け
      • タグの共有
    • ヒントと裏技
      • 自動補完
      • Git エイリアス
    • まとめ
  • Git のブランチ機能
    • ブランチとは
    • ブランチとマージの基本
      • ブランチの基本
      • マージの基本
      • マージ時のコンフリクト
    • ブランチの管理
    • ブランチでの作業の流れ
      • 長期稼働用ブランチ
      • トピックブランチ
    • リモートブランチ
      • プッシュ
      • 追跡ブランチ
      • リモートブランチの削除
    • リベース
      • リベースの基本
      • さらに興味深いリベース
      • ほんとうは怖いリベース
    • まとめ
  • Git サーバー
    • プロトコル
      • Local プロトコル
      • SSH プロトコル
      • Git プロトコル
      • HTTP/S プロトコル
    • サーバー用の Git の取得
      • ベアリポジトリのサーバー上への設置
      • ちょっとしたセットアップ
    • SSH 公開鍵の作成
    • サーバーのセットアップ
    • 一般公開
    • GitWeb
    • Gitosis
    • Gitolite
      • インストール
      • インストールのカスタマイズ
      • 設定ファイルおよびアクセス制御ルール
      • "拒否" ルールによる高度なアクセス制御
      • ファイル単位でのプッシュの制限
      • 個人ブランチ
      • "ワイルドカード" リポジトリ
      • その他の機能
    • Git デーモン
    • Git のホスティング
      • GitHub
      • ユーザーアカウントの作成
      • 新しいリポジトリの作成
      • Subversion からのインポート
      • 共同作業者の追加
      • あなたのプロジェクト
      • プロジェクトのフォーク
      • GitHub のまとめ
    • まとめ
  • Git での分散作業
    • 分散作業の流れ
      • 中央集権型のワークフロー
      • 統合マネージャー型のワークフロー
      • 独裁者と若頭型のワークフロー
    • プロジェクトへの貢献
      • コミットの指針
      • 非公開な小規模のチーム
      • 非公開で管理されているチーム
      • 小規模な公開プロジェクト
      • 大規模な公開プロジェクト
      • まとめ
    • プロジェクトの運営
      • トピックブランチでの作業
      • メールで受け取ったパッチの適用
      • リモートブランチのチェックアウト
      • 何が変わるのかの把握
      • 提供された作業の取り込み
      • リリース用のタグ付け
      • ビルド番号の生成
      • リリースの準備
      • 短いログ
    • まとめ
  • Git のさまざまなツール
    • リビジョンの選択
      • 単一のリビジョン
      • SHA の短縮形
      • SHA-1 に関するちょっとしたメモ
      • ブランチの参照
      • 参照ログの短縮形
      • 家系の参照
      • コミットの範囲指定
    • 対話的なステージング
      • ファイルのステージとその取り消し
      • パッチのステージ
    • 作業を隠す
      • 自分の作業を隠す
      • 隠した内容の適用の取り消し
      • 隠した変更からのブランチの作成
    • 歴史の書き換え
      • 直近のコミットの変更
      • 複数のコミットメッセージの変更
      • コミットの並べ替え
      • コミットのまとめ
      • コミットの分割
      • 最強のオプション: filter-branch
    • Git によるデバッグ
      • ファイルの注記
      • 二分探索
    • サブモジュール
      • サブモジュールの作り方
      • サブモジュールを含むプロジェクトのクローン
      • 親プロジェクト
      • サブモジュールでの問題
    • サブツリーマージ
    • まとめ
  • Git のカスタマイズ
    • Git の設定
      • 基本的なクライアントのオプション
      • Git における色
      • 外部のマージツールおよび Diff ツール
      • 書式設定と空白文字
      • サーバーの設定
    • Git の属性
      • バイナリファイル
      • キーワード展開
      • リポジトリをエクスポートする
      • マージの戦略
    • Git フック
      • フックをインストールする
      • クライアントサイドフック
      • サーバーサイドフック
    • Git ポリシーの実施例
      • サーバーサイドフック
      • クライアントサイドフック
    • まとめ
  • Gitとその他のシステムの連携
    • Git と Subversion
      • git svn
      • 準備
      • はじめましょう
      • Subversion へのコミットの書き戻し
      • 新しい変更の取り込み
      • Git でのブランチに関する問題
      • Subversion のブランチ
      • アクティブなブランチの切り替え
      • Subversion コマンド
      • Git-Svn のまとめ
    • Git への移行
      • インポート
      • Subversion
      • Perforce
      • カスタムインポーター
    • まとめ
  • Gitの内側
    • 配管(Plumbing)と磁器(Porcelain)
    • Gitオブジェクト
      • ツリーオブジェクト
      • コミットオブジェクト
      • オブジェクトストレージ
    • Gitの参照
      • HEADブランチ
      • タグ
      • リモート
    • パックファイル
    • 参照仕様(Refspec)
      • 参照仕様へのプッシュ
      • 参照の削除
    • トランスファープロトコル
      • 無口なプロトコル
      • スマートプロトコル
    • メインテナンスとデータリカバリ
      • メインテナンス
      • データリカバリ
      • オブジェクトの除去
    • 要約
    You May Also Like
    Also Available On
    Categories
    Curated Lists