ポケットリファレンスシリーズGit ポケットリファレンス

[表紙]Git ポケットリファレンス

紙版発売
電子版発売

四六判/272ページ

定価2,728円(本体2,480円+税10%)

ISBN 978-4-7741-5184-7

ただいま弊社在庫はございません。

本書の新版が発行されています。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

本書は,人気のバージョン管理システムGitの使い方について,目的別に紹介したリファレンス書です。Gitの書式や使い方から,エラーメッセージとその対処法まで詳しく紹介しており,初めてのユーザがGitを使うためのガイダンスとしてもお読みいただけるのはもちろん,現場の「困った」にも丁寧に応える内容です。さらにGitを拡張するサブコマンドの使い方,ブランチ・ディレクトリごとのアクセス制御,ソーシャルコーディングサービスGithubの使い方などの活用法も解説。現場でGitを利用する方の強い味方となる1冊です。

こんな方におすすめ

  • Gitを使い始めたが,初歩的な使い方しかしていない開発者
  • Subversion利用者でGitに関心がある方
  • Gitユーザ

この書籍に関連する記事があります!

Gitを使ってみよう
バージョン管理システムとは,ソフトウェア開発をはじめ,各種設定ファイルや論文・原稿(テキスト原稿)など,修正,改訂が発生するファイルを管理するためのしくみです。
Gitに潜む光と闇
最近急速にユーザが増えている分散バージョン管理システム「Git」について,ユーザの反応を紐解きながら,その魅力を紹介します。

目次

CHAPTER1 まずはGitを使ってみよう

Gitのインストール

  • WindowsへのGitのインストール
  • Git で日本語を扱うための設定
  • MacへのGitのインストール
  • LinuxへのGitのインストール
  • Gitの初期設定

はじめてのGit

  • Git の概要
  • ローカルリポジトリの作成
  • 編集内容をローカルリポジトリへ登録
  • 共有リポジトリとの同期
  • マージ

ブランチとマージ

  • ブランチの作成とマージ
  • Fast-forwardマージ
  • 複数コミットを1つにまとめるマージ
  • リベース

ブランチのプラクティス

  • 短期的に使用するブランチ
  • 長期的に使用するブランチ

CHAPTER 2 Gitリファレンス

  • Gitの設定を表示・変更する .............................................. config
  • Git リポジトリを初期化する ................................................... init
  • リポジトリを複製する ........................................................ clone
  • インデックスの内容を、リポジトリにコミットする ...........commit
  • インデックスに変更内容を登録する .......................................add
  • ファイルをバージョン管理から外す ........................................ rm
  • ファイルの名前を変更・移動する ...........................................mv
  • ファイルの状態を表示する ................................................ status
  • ファイルの変更やコミットをリセットする ........................... reset
  • コミットの内容を取り消すコミットを実行 .......................... revert
  • バージョン管理外のファイルを削除する ............................. clean
  • リモートリポジトリの変更を取得しマージする ....................... pull
  • リモートリポジトリの変更を取得する .................................. fetch
  • 共有リポジトリに変更を送信する ........................................ push
  • リモートリポジトリを設定する ........................................ remote
  • 直接通信できないリポジトリと同期をとる ........................ bundle
  • ブランチを操作する ......................................................... branch
  • 作業ツリーを切り替える ............................................... checkout
  • ブランチの状態を把握する ...................................... show-branch
  • コミットにタグを設定する .....................................................tag
  • 一番最近のタグからのコミット情報を表示する ................describe
  • 配布用のアーカイブファイルを作成する ...........................archive
  • 他のブランチの変更内容をマージする ................................merge
  • 外部ツールを使って競合を解決する ..............................mergetool
  • コミット履歴を変更する .................................................. rebase
  • 他のブランチのコミットを取り込む ............................ cherry-pick
  • ブランチの履歴を表示する ..................................................... log
  • コミットや作業ツリーとの差分を表示する ..............................diff
  • コミットの差分・ファイルの内容を表示する ........................show
  • ファイルの各行の変更履歴を確認する ................................ blame
  • リポジトリの操作履歴を確認する ....................................... reflog
  • リポジトリを検索する ..........................................................grep
  • コミットに注釈を付ける .................................................... notes
  • メール送信可能な形式のパッチファイルを作成する ...format-patch
  • パッチを作業ツリーに適用する .......................................... apply
  • メール形式のパッチからコミットを作成する ...........................am
  • ヘルプでコマンドを調べる ................................................... help
  • 作業を一時的に保存する .................................................... stash
  • Git リポジトリの中に他のGitリポジトリを取り込む .... submodule
  • SubversionのリポジトリをGitで操作する ............................ svn
  • Git リポジトリを最適化する ....................................................gc
  • Git リポジトリを検査する .................................................... fsck
  • HTTPでアクセスするための情報を更新する .....update-server-info

CHAPTER 3 活用編

ALMiniumを使ってWebで手軽に共有リポジトリを管理する

  • ALMiniumとは?
  • インストール
  • リポジトリの作成
  • ユーザ管理とアクセス権
  • リポジトリの操作
  • ブランチの作業とチケットを対応付ける

Gitoliteでブランチ・ディレクトリごとにアクセス制御できる共有リポジトリを作る

  • Git リポジトリを管理するGitolite
  • Gitoliteの概要
  • 管理者ユーザの準備
  • リポジトリサーバのセットアップ
  • Gitリポジトリの使い方
  • ユーザの登録
  • 新しいリポジトリの作成
  • リポジトリのアクセス権の設定

フックによるコミット・プッシュ前後に処理をはさみ込む

  • コミットに関するもの
  • プッシュに関するもの
  • その他
  • フックスクリプトの注意点

リポジトリの更新内容をメールで共有する

  • 準備
  • 送信メッセージの例
  • トラブルシュート

GUIや統合開発環境でGitを利用する

  • WindowsでのGitのGUI環境
  • 統合開発環境で利用するGit

ソーシャルコーディングを実現するGitHub

  • GitHubの主な機能
  • プルリクエストの使い方
  • 逆引き索引
  • 索引

COLUMN

  • 無視ファイルの設定
  • ローカルリポジトリから共有リポジトリを作成する
  • トピックブランチの定義
  • Daily Build
  • エディタで設定編集
  • コミットの修正
  • 空ディレクトリの登録
  • Windows環境でのファイルの実行権限
  • git rmで誤ってファイルを削除した
  • ファイルを作業ツリーに残したままバージョン管理から外す
  • リポジトリからファイルを完全削除する
  • git resetとgit rmの違い
  • git reset --hard自体を取り消したい
  • 日本語ファイルに対する誤動作
  • .gitignoreでファイルをGitの対象外にする
  • git reset --hardとの関係
  • デフォルトリモートブランチの設定
  • fetchとpullの違い
  • git pushでリモートリポジトリ名、リモートブランチ名を省略したい
  • ローカルブランチ、リモート追跡ブランチ、リモートブランチ
  • git logの範囲指定による増分の指定
  • 共有リポジトリ上のブランチとタグの削除の防止
  • detached HEAD
  • タグ名のルール
  • アーカイブ作成用の設定(.gitattributesファイル)
  • 設定が不要な外部ツール
  • お勧めの外部ツール
  • バックアップファイル(*.orig)を作成しない
  • 過去のコミットのコミットメッセージを修正する
  • コミットのAuthorやメールアドレスを一括して書き換える
  • 操作ミスで参照できなくなってしまったコミットを復旧する
  • 共同作業開始前の決めごととその運用

著者プロフィール

岡本隆史(おかもとたかし)

プロジェクト管理にデスノートカレンダーを導入したのをきっかけに,エルシャダジャイル,宇宙戦艦スプリント,プロジェクト日記など,名伏しがたいアジャイルのようなプラクティスの開発にいそしんでいる。最近はGitによる開発プロセスの改善に取り組む。全体の監修と第3章の執筆を主に担当。


武田健太郎(たけだけんたろう)

大阪生まれの武田だが某製薬会社とは残念ながら無関係。趣味が弓道しかないのに,気が付いたらアメリカに来てしまっていた。最近はGitをいかに乱用するかを研究中。第1 章と第2章の一部を主に担当。


相良幸範(さがらゆきのり)

ソフトウェア開発が趣味で,基盤ソフトウェアに興味を持つ。先日10 年ぶりにパスポートを取得し,旅行に興味を持つが,一緒に行く人がいないことに気付く。第2章を主に担当。