関連サイト
本書の関連ページが用意されています。
内容紹介
いま開発現場で注目を集めているバージョン管理システム、Git(ギット)。ソフトウェア開発だけでなく、Web制作/Web開発の現場にも徐々に導入が進んでいます。しかし、CUIでの操作(いわゆる黒い画面)のイメージが強いせいか、便利なものだとは聞いているが手が出せない人から、日常的に使いこなしている人まで、個人によって、活用の度合いに大きな差があるのではないでしょうか。
本書はこのような状況を背景に、初心者から中級者までを幅広くサポートできるよう、「Git入門編」「Git実践編」の2部で構成されています。
Chapter1「Git入門編」は、Gitの入門者向けに、Gitの概念から導入、基本操作までを解説。CUIが苦手な初心者でも取り組めるよう、GUIツールであるSourceTreeを使い、サーバーにはGitHubを利用して、解説していきます。Gitのインストール、リポジトリの作成、コミットやコミットメッセージの入力といったGitの基本操作にはじまり、GitHubのアカウント作成、GitHub上でのプッシュ、クローン、プルなどの操作、などの「初心者はこれだけはおさえておきたい」部分を順を追って説明しています。操作手順を丁寧に解説していますので、Git経験ゼロからスタートする方は、Chapter1の解説に従って一緒に操作し、Gitの概念や、実務での作業に慣れていくとよいでしょう。
Chapter2「Git実践編」では、Gitをある程度使いこなしている中級者向けに、CUI操作を前提に、Gitの活用ノウハウを解説しています。適切な履歴の作り方、rebaseで履歴変更、checkoutやreset、reflog、revertを使った変更の戻し方、ブランチの運用、マージの手法、コンフリクトの解消、リモートとの連携など、Gitをもっと便利に使いこなしたいなら知っておきたい機能や考え方を扱っています。
Gitに触れてみようと思う方から、Gitのスキルを高め、効率よい開発に取り組もうとしている方まで役立つ、現場の「知りたい」や「困った」に応える1冊です。
なお、本書は、技術情報配信有料サービス「CodeGrid」(株式会社ピクセルグリッド・運営)掲載の「Web制作者のためのGit入門」「Web制作者のための実践Git」を再構成し、情報の更新と追加を行ったものです。
書誌情報
- 著者: 大杉 充, 外村 和仁
- 発行日: 2014-06-28 (紙書籍版発行日: 2014-06-28)
- 最終更新日: 2014-06-28
- バージョン: 1.0.0
- ページ数: 226ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
大杉 充
ディレクター。コーディングサービス「牧野工房」にて、おもにディレクターとして数百サイトのコーディングに携わる。業務フローや社内外ガイドラインの開発、制作全般の管理・人材育成などを担当。自らも第一線でコーディングを行う。またそれらの経験を活かしセミナー講師も勤め、制作工程全体の効率化を目指している。漠然としたイメージや状況をうまく把握し、最適なアドバイスや提案につなげることができる。
外村 和仁
株式会社ピクセルグリッド フロントエンド・エンジニア。HTMLコーダー、JavaScriptプログラマ、PHP、Perlのプログラマといった職務を経験後、2010年に株式会社ピクセルグリッドに入社。大規模サイトの運用、開発の経験を活かしてバックエンドからフロントエンドまで幅広く担当。好きな言語はJavaScriptとRuby。著書に『ノンプログラマのためのJavaScriptはじめの一歩』(技術評論社)ほか多数。WEB+DB PRESS、Software Designなどにも寄稿。
目次
Chapter01 Git入門編
- 1.1 Gitでできること
- 1.1.1 Gitとか、GitHubとか、聞いたことありますか?
- 1.1.2 開発時に起こりうる本当にあった怖い話
- 1.1.3 Gitでできること
- 1.1.4 さまざまなバージョン管理システム
- 1.2 Gitのインストール
- 1.2.1 Gitをインストールする
- 1.2.2 Gitを使い始める
- 1.2.3 SourceTreeをインストールする
- 1.2.4 自分の名前とメールアドレスを設定する
- 1.3 リポジトリの作成
- 1.3.1 SourceTreeでのリポジトリの追加(Macの場合)
- 1.3.2 SourceTreeでのリポジトリの追加(Windowsの場合)
- 1.3.3 リポジトリ作成の考え方
- 1.3.4 既存のプロジェクトに参加する場合
- 1.4 Gitの基本操作
- 1.4.1 最初のコミット
- 1.4.2 コミットメッセージを入力する
- 1.4.3 2回目以降のコミット
- 1.4.4 変更の一部分のみをコミット
- 1.4.5 ファイル削除のコミット
- 1.4.6 変更を破棄する(ファイル削除をなかったことにする)
- 1.4.7 まとめ
- 1.5 GitHubのアカウントを作成する
- 1.5.1 サーバーとのやりとりのあらまし
- 1.5.2 GitHubのアカウントを作る
- 1.5.3 SSH Keyの作成
- 1.5.4 SSH Keyの登録
- 1.6 GitHubの基本操作
- 1.6.1 GitHub上に新しいリポジトリを作成する
- 1.6.2 GUIクライアントでリモートリポジトリの設定をする
- 1.6.3 最初のプッシュをする
- 1.6.4 作業データを共有する:クローン
- 1.6.5 別のリポジトリの作業を取り込む:プル
- 1.6.6 まとめ
- 1.7 初心者の最初の難関
- 1.7.1 プッシュできない……!
- 1.7.2 プルできない……!
- 1.7.3 間違えてコミットしちゃった!
- 1.8 覚えておきたい用語たち
- 1.8.1 ワーキングコピー
- 1.8.2 ブランチ(branch)
- 1.8.3 チェックアウト(checkout)
- 1.8.4 フェッチ(fetch)
- 1.9 Git初心者がいる状態での注意点
- 1.9.1 Git初心者がいるときのフロー
- 1.9.2 最悪の場合の必殺技
- 1.9.3 Gitに慣れないうちは覚えておきたい禁じ手
- 1.10 まとめ
- 1.11 Gitコマンドの基本
- 1.11.1 インストールと環境設定
- 1.11.2 Gitの基本的な使用方法とコマンド
- 1.11.3 変更などを元に戻すgit reset
- 1.11.4 まとめ
Chapter02 Git実践編
- 2.0 はじめに
- 2.1 適切な履歴の作り方
- 2.1.1 適切な履歴とは
- 2.1.2 良いコミットメッセージ、悪いコミットメッセージ
- 2.1.3 コミットの粒度の適切さ
- 2.1.4 git add -p
- 2.1.5 まとめ
- 2.2 rebaseで履歴変更
- 2.2.1 履歴の変更とは
- 2.2.2 git rebase -i
- 2.2.3 コミットメッセージを編集する
- 2.2.4 rebase後のコミットツリー
- 2.2.5 コミットをまとめる
- 2.2.6 コミットの順番を入れ替える
- 2.2.7 順番を入れ替えてコミットをまとめる
- 2.2.8 コミットを削除する
- 2.2.9 コミットを編集する
- 2.2.10 コミットを分割する
- 2.3 変更を戻す1 checkout
- 2.3.1 ワークツリー、インデックス、リポジトリとは
- 2.3.2 git checkout
- 2.3.3 ファイル名の明示的な指定
- 2.3.4 コミットとファイルを指定したcheckout
- 2.3.5 まとめ
- 2.4 変更を戻す2 reset
- 2.4.1 git reset
- 2.4.2 reset --soft
- 2.4.3 reset --mixed
- 2.4.4 reset --hard
- 2.4.5 ORIG_HEAD
- 2.4.6 まとめ
- 2.5 変更を戻す3 reflog、revert
- 2.5.1 git reflog
- 2.5.2 resetの復元
- 2.5.3 削除したブランチの復元
- 2.5.4 git revert
- 2.5.5 まとめ
- 2.6 ブランチとマージ
- 2.6.1 ブランチとは
- 2.6.2 ブランチを作る
- 2.6.3 マージ
- 2.6.4 fast-forwardマージ
- 2.6.5 mergeコマンドのオプション
- 2.6.6 コンフリクトの解消
- 2.6.7 まとめ
- 2.7 rebaseを使ったブランチの統合
- 2.7.1 rebaseとは
- 2.7.2 rebaseの動作
- 2.7.3 rebaseを用いるケース
- 2.7.4 pullの場合のmergeとrebase
- 2.7.5 まとめ
- 2.8 リモートとの連携
- 2.8.1 clone
- 2.8.2 リモートリポジトリの設定
- 2.8.3 複数のリモートリポジトリの設定
- 2.8.4 push
- 2.8.5 リモートブランチの作成と削除
- 2.8.6 pull
- 2.8.7 fetch
- 2.8.8 fetchを利用するケース
- 2.8.9 まとめ
- 2.9 pushとpullのための設定
- 2.9.1 引数なしのpushとpull
- 2.9.2 ローカルブランチとリモートブランチの紐付け
- 2.9.3 トラッキングの設定
- 2.9.4 引数なしのpull
- 2.9.5 pushのデフォルトの動作
- 2.9.6 push.default
- 2.9.7 まとめ
Chapter03 APPENDIX
- 3.1 GitとGitHub
- 3.1.1 新規にリポジトリを登録する場合
- 3.1.2 すでにあるリポジトリを利用する場合
- 3.2 さくらインターネットサーバーにGitのリポジトリを作成
- 3.2.1 インストール作業
- 3.2.2 リポジトリの設定
- 3.3 Azureとの接続
- 3.3.1 GitHubとの接続
- 3.3.2 Gitの接続
- 3.3.3 まとめ