Gitを始めるためのおすすめ書籍 – 6冊を紹介!

「Git」が多くのシステム開発の現場で利用されています。Gitとは、ファイルを管理するシステムのことです。エンジニアやデザイナーの方、またそれを目指す人であれば、Gitの知識は必要不可欠です。しかし、Gitは慣れるまではつまずきやすい。そこで今回は、Gitの仕組みや利点、実践的な内容がわかりやすくまとめられている参考書6冊をご紹介します。

「いちばんやさしいGit&GitHubの教本」

【詳細 / 目次 / はじめに】を確認する

本書は、著者である2名のエンジニアの方がキャラクターとして登場し、対話のような形で展開されています。手元のパソコンでファイルをバージョン管理しながらGitの基本的な使い方を解説、実践的なワークフローに沿ってGitHubを利用してチーム開発をするための知識を身につけられる内容、このような二部構成になっています。Git&GitHubについての知識がゼロでも理解できるよう、詳しく説明されています。

レッスンごとに重要なポイントがまとめられており、全体像を掴みやすいです。手順も1つ1つ丁寧に解説されているので、実際に手を動かすときに分かりやすいです。本書では、エディタはVSCodeが使われています。コマンド以外の重要な用語についても、その都度イラストつきで説明されているため、つまずくことなく読み進めることができるかと思います。冒頭でGitの基本概念を説明した後、Gitを始める準備としてGitのインストールから解説が載っているため、初心者の方向けの1冊です。

「いちばんやさしいGit入門教室」

大澤 文孝 (著)
出版社: ソーテック社; B5変形版 (2019/8/23)、出典:出版社HP

【詳細 / 目次 / はじめに】を確認する

本書は、図解やイラストが豊富で、Gitの基本的な使い方が分かりやすくまとまっています。噛み砕いた説明なので、内容が頭にスッと入ってきます。「チーム開発」、「チーム運用の考え方」に重きを置いているため、プログラマー・デザイナーなどの開発メンバーを登場人物として扱っています。本書もまた、対話形式で進んでいきます。チャプターの始まりに必ず対話があるので、その章の要点が掴みやすいです。

また、開発現場で問題に直面した時に使える、便利な操作方法などもまとまっています。実践として使える知識が多いです。GitHubのインストール手順から丁寧に説明が書かれています。内容の難易度も分量もほどよく、初心者向けの入門書です。また、Gitの慣例やエラーへの対処法、VScode(無償)やDreamweaver(有償)等の他ソフトを使った操作方法など、幅広い内容が詰まっています。

「ノンプログラマーなMacユーザーのためのGit入門」

向井 領治 (著) , 大津 真 (著)
出版社: ラトルズ; 初版 (2019/5/28)、出典:出版社HP

【詳細 / 目次 / はじめに】を確認する

本書は、初心者向けのMacユーザー用のGit入門書です。Gitの入門書のほとんどは読者がプログラマーであることを前提として説明が進んでいくため、ノンプログラマーでかつMacユーザーの方にとってこの本はかなりおすすめでしょう。本書では、エディタはMac用のアプリ「CotEditor」、Gitを動かす際にはGUIツールである「SourceTree」が利用されています。GUIツールを利用することで視覚的にコマンドの動きを捉えることができるため、ノンプログラマーでも進めやすいのがポイントです。

実践でのステップが1から丁寧に書かれており、説明もシンプルにまとまっているため、とても読みやすいです。前半はSourceTreeを使っていましたが、最終章では、GitのWebサービスであるGitHubを用いたGitの操作方法が記載されています。全体を通すと分量が若干多めなので、全ての実践を完了するまでにはやや時間はかかりそうですが、間違いなくスキルは身に着きます。

「GitHub実践入門」

大塚 弘記 (著)
出版社: 技術評論社 (2014/3/20)、出典:出版社HP

【詳細 / 目次 / はじめに】を確認する

本書は、Gitの概念やGitHubの操作方法など基本から説明されているため、実践を通して体系的に学習をすることができます。歴史を踏まえての内容も多くあるので、頭に入りやすいです。スクリーンショットに沿ってGitHubのUIの名称や役割を説明があり、またGitHubの便利な機能も細かく記載されているため、独学でGitHubを利用しようと思っている方は手を動かす前にこの本を購入するといいかもしれません。GitHubの操作で悩む時間を短縮できるでしょう。

「Travis CI」や「Coveralls」など、GitHubと連携するツールやサービスも多く紹介されています。最後の章では、GitHubを用いた開発フロー、会社でのGitHubの導入に関することがまとまっています。本書は、GitHubの使い方や機能についてわかりやすくまとまってありますが、「GitHub」の実践入門なので、ある程度Gitの知識がある方のほうが読みやすいかと思います。中級者~上級者向けの1冊です。他の参考書をGitの入門書として熟読し、2冊目にはこれを選び、Gitの知識をアウトプットするのに利用するといいでしょう。

「独習Git」

リック・ウマリ (著), 吉川 邦夫 (翻訳)
出版社: 翔泳社 (2016/2/26)、出典:出版社HP

【詳細 / 目次 / はじめに】を確認する

本書は、わかりやすい解説・手を動かして学べる演習・力試しの課題の3ステップでGitに関する知識を学ぶことができます。噛み砕いた説明なので、知識が頭に残りやすいです。第8章のタイトルである「Gitというタイムマシン」や、「ステージングエリアは芸能人の楽屋と考えよう」、など他の参考書にはないような表現が多いため、純粋に読んでいて面白かったです。レッスンには多くの演習があり、量も多く手順も全て説明があるため、効率よく知識を吸収できますし、やりがいもあります。しかし、章の終わりに課題が複数与えられており、それがやや難しめなので初心者の方は手こずってしまうかもしれません。

中級者~上級者向けの1冊です。他のGitの入門書より難易度が高く量も多いため、読み応えがあります。効率的・本格的・体系的にGitのスキルを習得することができるでしょう。初心者向けの入門書を他に1冊、それをマスターしたらそのあとの実践にはこの1冊を選ぶとよいでしょう。

「わかばちゃんと学ぶGitの使い方入門」

湊川 あい (著) , DQNEO (監修)
出版社: シーアンドアール研究所 (2017/4/21)、出典:出版社HP

【詳細 / 目次 / はじめに】を確認する

本書は漫画で書かれており、対話形式で進んでいきます。イラストが豊富なので、サクッと読み進めることができます。コマンドだけでは理解しにくいGitの仕組みが頭に入りやすく、イメージが掴みやすいです。登場するキャラクターたちも個性的で、ストーリーも面白いので、楽しく学習することができます。つまずきやすいポイントごとに漫画を使ってまとめられているところも良かったです。
SourceTreeやGitHubでの実践によって、Gitに慣れることができます。本書で利用されているSourceTreeとは、Gitを使ったことがない人向けのGUIのツールです。グラフィカルなインターフェースで視覚的に操作を行うことができるため、コマンドラインで操作するよりもコマンドの動きを把握しやすいです。初心者の方でも苦手意識を感じずに手を動かしていくことができるかと思います。また、コミットやプッシュほどは聞き慣れない「リバート・リベース・スカッシュ」等のコマンドも扱います。一読するだけでも、Gitの基本的な概念や全体像をおおまかに理解することができるため、Gitの入門書として最適な初心者向けの1冊です。しかし、内容はそこまで難しくなく分量も少なめなので、Gitのことをある程度理解できている中級者の方にとっては物足りないかもしれません。また、スクリーンショットの図が多く手順がわかりやすいです。Windows、Macそれぞれでの操作方法が丁寧に図解されてあります。

全目次 - いちばんやさしいGit&GitHubの教本 人気講師が教えるバージョン管理&共有入門

はじめに

数あるGit関連の書籍から「いちばんやさしいGit&GitHubの教本」を手に取っていただき、ありがとうございます。これから私たちと一緒にGitとGitHubを利用したバージョン管理方法について学んでいきましょう。

ソースコードの履歴を管理するツールとして誕生したGitは、今や習得が欠かせないといっていいほど普及し、多くの開発者に親しまれています。Gitを使うことで、複数人の作業者が安心して同じファイルを更新したり、変更の履歴をわかりやすく保ったりすることが可能になりました。また、Gitを活用したWebサービスであるGitHubの登場により、インターネット上での共同開発が促進されるようになりました。

世界中の人たちとコミュニケーションをとりながら開発することは、当たり前のこととなりつつあります。近年では、執筆作業やドキュメントの管理など、プログラミング以外にも多くの用途でGitとGitHubが利用されています。プログラマーでなくとも、ぜひGitの学習に挑戦してみていただきたいです。

本書は大きく分けて二部構成となっています。前半では、手元のパソコンでファイルを実際にバージョン管理しながら、Gitの基本的な使い方を解説しています。後半は、実践的なワークフローに沿ってGitHubを使い、チームメンバーと一緒に開発を進めるための知識を身につけられる内容としています。

全体を通し、Gitの操作に特化したツールではなく、コマンドラインを使った操作が中心であることはひとつの大きな特徴です。難しそうに思えるかもしれませんが、未経験者でも理解できるように配慮しているので、心配することはありません。概念や操作方法を丁寧に解説するのみならず、「なぜそうするのか」といった疑問に答えられるような説明も多く入れました。皆さんがGitとGitHubの基礎をおさえ、日々の作業で活用していくための一助となれば幸いです。

目次 – いちばんやさしいGit & GitHubの教本: 人気講師が教えるバージョン管理&共有入門

著者プロフィール……
はじめに
本書の読み方
索引
コマンドリファレンスのダウンロードについて…

Chapter1 Gitの基本を学ぼう
01バージョン管理
バージョン管理とその目的を理解しましょう・・
02Gitの広がり
Gitの特徴を知りましょう..
03コミットの概要
変更を記録するコミットについて知りましょう…
04リポジトリの概要
リポジトリの役割を理解しましょう
05ローカルリポジトリの操作
ローカルリポジトリに対する操作のイメージをつかみましょう…..
06リモートリポジトリの操作
リモートリポジトリに対する操作のイメージをつかみましょう….

Chapter2Gitを使う準備をしよう
07環境を整える
パソコンにGitをインストールしましょう..
08コマンドの実行
コマンドを実行するツールを起動しましょう…..
09CUIの利用
CUIでフォルダーやファイルを操作する方法を身に付けましょう……
10エディターのインストール
Visual Studio Codeをインストールしましょう
11拡張子の表示
ファイルの拡張子を表示しましょう….
12初期設定
Gitの設定をしましょう ・………..
13、GUIクライアントの紹介
GUIクライアントを知りましょう

Chapter3ファイルをバージョン管理してみよう
14Gitコマンドの概要
ローカルリポジトリでの操作を知りましょう.
15ローカルリポジトリの作成
ローカルリポジトリを作りましょう…
16ステージングエリアへの登録
ステージングエリアに登録しましょう.
17ファイルの差分確認
ファイルの差分を確認しましょう
18コミットする
ファイルをコミットしましょう・・
19操作を取り消す
ローカルリポジトリでの操作を取り消しましょう.
20ファイルを削除する
Gitの管理下にあるファイルを削除しましょう…………….
21Gitで管理しないファイルを設定
Gitで管理しないファイルを設定しましょう…….
22コミット履歴の確認
コミットの履歴を確認しましょう

Chapter4 GitHubのリポジトリを パソコンに取得しよう
23GitHubの登録
GitHubを使う準備をしましょう….
24GitHubの利用準備
GitHubに公開鍵を設定しましょう
25リモートリポジトリのフォーク
サンプルプロジェクトを自分のアカウントの管理下にコピーしましょう……
26リモートリポジトリのクローン
イベント案内ページをパソコンに取得しましょう.
27開発環境の準備
Webページの編集作業をするための準備をしましょう.

Chapter5
ブランチを使って ファイルを更新しよう
28 ブランチの基本
ブランチとは何かを理解しましょう…
29ブランチを用いた実践1
専用のブランチでイベント会場の情報を更新しましょう..
30ブランチを用いた実践2
プルリクエストを作成しましょう…
31ブランチを用いた実践3
プルリクエストをレビューしてもらいましょう
32ブランチを用いた実践4
GitHubのレビュー機能を使いこなしましょう….
33ブランチを用いた実践5
作成したブランチをmasterブランチにマージしましょう….
34プルとフェッチ
リモートリポジトリの内容をローカルリポジトリに取得しましょう
35GitHubフロー
GitHubフローについて理解しましょう..

Chapter6
複数ブランチを同時に使って ファイルを更新しよう
36シナリオの解説
複数ブランチを使うためのシナリオを理解しましょう….
37複数ブランチの使用1
専用のブランチでスピーカーの情報を更新しましょう
38複数ブランチの使用2
さらにブランチを作成し、セッションの情報を更新しましょう
39複数ブランチの使用3
スピーカー情報更新用ブランチに戻り、作業を再開しましょう…..

Chapter7コンフリクトに対処しよう
40コンフリクトの理解
コンフリクトとは何かを理解しましょう
41コンフリクトの発生
コンフリクトを発生させてみましょう・・
42コンフリクトの解消
コンフリクトが発生した際の対応を学びましょう

Chapter8
GitHubをさらに使いこなそう
43リポジトリのフォロー
オープンソースソフトウェアのリポジトリへアクセスしましょう….
44リポジトリの検索
オープンソースソフトウェアを探してみましょう…
45Issueやガイドライン
オープンソースソフトウェアに貢献しましょう

全目次 - いちばんやさしい Git 入門教室

はじめに

Gitは、たくさんのファイルを更新履歴とともに管理するソフトウェアです。システム開発の現場において、とてもよく使われています。
年々、Gitを導入する開発チームは増えてきており、そうした現場で仕事をするデザイナーやプログラマーは、Gitを使えなければ仕事になりません。
本書は、そうした「もうGitから逃れられない人たち」のための入門書です。

デザイナーやプログラマーは忙しく、時間がありません。そこで本書では、「現場で使う機能だけを、最低限の操作でできるようになること」を目指します。
Gitはとても豊富な機能を持つソフトウェアなので、全機能を網羅しようとすれば、とんでもない量の紙幅を費やすことになります。実際、Gitを勉強しようと本を読み、諦めた人もいるかも知れません。

しかし実務で使う機能は、そのうちのごくわずかです。大半の機能は、Gitで管理されたファイルを整理するためのものです。整理作業そのものは、デザイナーやプログラマーの仕事ではありません。Gitに詳しい者が担当すればいいのです。

そう、現場にGitが導入されているということは、開発チームにはGitに長けた人がいるはずなのです。デザイナーやプログラマーがやらなければならないことはファイルを登録したり、取得したりする作業だけです。難しいことは長けた人に任せましょう。

Gitは、他のメンバーと共同作業するために使うので、少し癖があります。
ひとつは、他の人の変更と競合するときに発生するエラーです。ひとたび競合が発生すると、それを直すまでファイルの更新ができず、開発の進捗が滞ってしまいます。
もうひとつは、「こうしたやり方をしていい、ダメ」という文化です。たとえば不完全なファイルを登録すると、他の人にも不完全なファイルが配布されてしまい、皆が迷惑することがありそこで本書では、実務でありがちなエラーの解決策や、「ふつうならGitをこう使う」という慣例をできるだけ多く取り上げるようにしました。

本書の登場人物は、デザイナー、プログラマー、開発リーダー、開発マネージャーの4人。それぞれGitを使う目的が違う人たちです。さて、どのような物語が繰り広げられるのでしょうか。
Gitは面倒とか難しそうなどと言ったところで、時流には逆らえません。Gitを使ったチーム開発に参加できるだけの基本と教養を、本書がお伝えすることができれば幸いです。2019年夏 大澤文孝

大澤 文孝 (著)
出版社: ソーテック社; B5変形版 (2019/8/23)、出典:出版社HP

目次 – いちばんやさしい Git 入門教室

CONTENTS
Chapter 1
Gitをはじめよう
Lesson 1-1 Gitって何?
COLUMN 一人で使ってもGit は便利
Lesson 1-2 Gitの全体像
COLUMN Git クライアント機能を内蔵した開発ツールやデザインツール
Lesson 1-3 Git のキホン リポジトリとブランチ
COLUMN Git サーバーなしで使う「ひとりGit 」
Lesson 1-4 ローカルとリモートとのやりとり
COLUMN リモートリポジトリが壊れたときはローカルリポジトリから復帰できる
Lesson 1-5
Gitを使うときのコツ

Chapter 2
リポジトリを作る
Lesson 2-1リボジトリ作成の流れ
COLUMNリポジトリは安全第一で選ぶ
COLUMN GitHubとGitは別物
Lesson 2-2 GitHubのアカウントを作る
Lesson 2-3 GitHubでリポジトリを作る
Lesson 2-4ユーザーにアクセス権を設定する

Chapter 3
Git操作の基本
Lesson 3-1
Git クライアントの選び方
COLUMN Gitを操作するためのgitコマンド
Lesson 3-2
GitHub Desktopをインストールする
Lesson 3-3リポジトリをクローンする
COLUMN リモートリポジトリを使わない場合
COLUMN スタート画面が表示されなかったり一覧に表示されていなかったりするときは
COLUMN リポジトリの切り替え
Lesson 3-4 リポジトリの基本操作
COLUMN ネットに接続していなくても編集できる
Lesson 3-5 ファイルの新規追加 からコミット、プッシュまで
COLUMN 拡張子の表示
COLUMN 数ファイルの変更
COLUMN コミットハッシュ
Lesson 3-6 他人のファイルの更新を確認するプル
Lesson 3-7 Git基本操作のまとめ

Chapter 4
Lesson 4-1 ブッシュできない
Lesson 4-2 ブルしたらファイルが変になった
Lesson 4-3 ブルできないときの対処法
Lesson 4-4 コミットせずにブルしたい
Lesson 4-5 どうしようもなくなったときの対処法
Lesson 4-6 前の変更時点に戻すには?
COLUMNリペースとチェリービック
COLUMN GitHubやgitコマンドで詳しく比較する
Lesson 4-7 コミットの対象から外したい
Lesson 4-8 Gitの対象から外したい
Lesson 4-9 困ったときとその対策のまとめ

Chapter 5
運用とチーム開発
Lesson 5-1 チーム開発におけるGitの基本
COLUMIND ステージング環境
COLUMN Gitにコミットされたときに自動的にサーバーなどに反映させるには
COLUMNコードレビュー
COLUMN チケット駆動開発
COLUMN [Git-flow] と[GitHub Flow] Lesson 5-2 鍵が欲しいと言われたら
COLUMIN「Gitツールが見つからない」と言われたときは
Lesson 5-3チーム開発でのGit操作を体験してみよう
COLUMIND プルリクエストを使う場合

大澤 文孝 (著)
出版社: ソーテック社; B5変形版 (2019/8/23)、出典:出版社HP

本書サポートページについて
本書に掲載されているウェブサイトのURLへは、書籍サポートページのリンク集からアクセスしていただけます。また、万一誤りがあった場合、正誤表も掲載しますので、ご活用ください。
書籍サポートサイト
http://www.sotechsha.co.jp/sp/1246/

登場人物
本書では、ファイル管理ツール「Git」の基本的な使い方について、詳しく解説していきます。要となるのは「チーム開発」そして、「チーム運用の考え方」です。
そこで本書は、以下の5人の開発メンバーに登場してもらい、現場で直面するさまざまな問題・疑問に答える形で、解説を進めていきます。読者の皆さんが、実際にGitを利用して開発する際の参考になればと思います。

□大澤先生
Webシステムの設計・開発に従事する傍ら、企業研修やセミナーでエンジニア向けの講義を行う。Gitのスペシャリストであり、このツールはもはや体の一部。

□デザイナー
システム開発のデザイン担当。Git初心者だが、仕事熱心で勉強家。わからないことは何でも質問します。

□プログラマー
プログラミング担当。Gitはかじった程度。自信のなさが玉に瑕だが、仕事はきちんとするタイプ。

□開発リーダー
現場スタッフを束ねる中間管理職。バージョン管理や運用の効率化に「Gitは必須」と考え、勉強することに。

□開発マネージャー
システム開発の統括責任者。「Gitは進捗管理に便利」と聞き、使い方を学ぶことにした。

大澤 文孝 (著)
出版社: ソーテック社; B5変形版 (2019/8/23)、出典:出版社HP
全目次 - ノンプログラマーなMacユーザーのためのGit入門 〜知識ゼロでスタート、ゴールはGitHub〜

はじめに

本書は、プログラミングをしないMacユーザーをとくに意識した、Gitの入門書です。Gitの知識がまったくない段階から始めて、主要機能をしっかり理解し、GitHubの共有機能までたどり着くことを目標にしています。これから始める方はもちろん、過去に挫折した方や、いまさら人に質問できない方、こっそりマスターして同僚に差をつけたい方にもおすすめです。

プログラマーの間でGitの人気は高まる一方ですが、さらに最近では、ノンプログラマーにとってもその利便性が認められてきています。たとえば、ソフトウェア開発のプロジェクトにプログラマー以外の立場で参加する場合や、そもそもプログラムではない一般的な文書作成の目的で、Gitの基礎知識を必要とされるケースもあるようです。

しかしGitはもともと大規模なソフトウェア開発のために作られたもので機能が多く、独特な用語が多い上に、ほとんどの解説書では読者がプログラマーであることを前提にしているため、ノンプログラマーにとっては最初の手掛かりをつかむことさえ難しいのが実情ではないでしょうか。そこで本書では、次のような方針で執筆しました。

第1に、一般的なMac用アプリケーションと同じ感覚でGitを利用できる「Sourcetree」というアプリケーションを使います。「ターミナル」やコマンド入力は扱いませんが、用語や機能を本書で学んでおけば、将来本格的に使いたくなったときにも役立つでしょう。
第2に、サンプルには、単純な日本語の文書を使います。プログラミングの知識は必要ありませんし、操作結果の変化もわかりやすくしています。

第3に、とりあげるアプリケーションやサービスは、すべて無料です。規模が大きくなると有料になるものもありますが、独習や、少人数のプロジェクトであれば費用はかかりません。

本書は、初心者向けの解説を得意とする向井領治が前半を、長年にわたりUNIXやプログラミングの著書を数多く手がけてきた大津真が後半を執筆しています。本書が読者の皆様のお役に立てば幸いです。2019年5月向井領治

向井 領治 (著) , 大津 真 (著)
出版社: ラトルズ; 初版 (2019/5/28)、出典:出版社HP

目次 – ノンプログラマーなMacユーザーのためのGit入門

第1章Gitの概要と操作環境の準備
11Gitの特徴–
Gitとバージョン管理システム
手動バージョン管理の問題点
TimeMachineではダメなのか?
12Gitを使うには
1台の中で使う・共有して使う
GitとGitHub-
集中型と分散型
13CotEditorを準備する
CotEditorldとは
なぜテキストエディタを使うのか
CotEditorのインストール・
14Sourcetreeを準備する
Sourcetreeとは
なぜSourcetreeを使うのか
Sourcetreeのインストール
自分の情報を登録する

第2章Gitのプロジェクトを始めよう
21リポジトリを作成する
プロジェクトフォルダと作業ツリー
プロジェクトフォルダを登録する4
Gitが内部で使用する「.git」フォルダ
リポジトリブラウザー
リポジトリウインドウ
Sourcetreeからリポジトリを作成する
2-2リポジトリを削除する-
リポジトリを削除する
プロジェクトフォルダを直接扱うときの注意
23リポジトリへファイルを登録する
追跡するファイルを登録する。
コミットIDについて
2.4-追跡したくないファイルを登録する
無視するファイルを登録する
無視するフォルダを登録する
無視するパターンを登録する(個別リポジトリ)
無視するパターンを登録する(すべてのリポジトリ)
さまざまなパターンの指定方法
登録した無視リストを修正する
2-5変化を登録する
内容を追加して記録する
既存の内容を編集して記録する
変化は行単位で表示する
改行も変化として扱われる
2.6履歴を取り出す
履歴を取り出す
ダーティな状態でチェックアウトすると
2.7ステージを使う
ステージとは
ステージを使ってコミットする
ステージへは作業ツリーからコピーされる
ステージを取り消すやり直す場合
2.8ファイルを操作する
ファイルを削除する
ファイルの名前を変える
ファイルを個別に復元する
追跡をやめる
2–9差分を詳しく調べる
任意のコミット間の差分を調べる
特定のファイルのログを調べる
別のアプリを使って差分を調べる
コミットメッセージの書き方
コミットメッセージにテンプレートを設定する
2-10作業をやり直す
直前のコミットのメッセージを書き換える
直前のコミットをやり直す
直前のコミットへ戻す
2-11過去のコミットへ戻す
実験用のリポジトリを作る
MixedオブションSoftオプション
Hardオプション
もしもチェックアウトして作業を続けると

向井 領治 (著) , 大津 真 (著)
出版社: ラトルズ; 初版 (2019/5/28)、出典:出版社HP

第3章ローカルでのGitの活用
3-1ブランチの基本操作
ブランチとマージについて
masterブランチを確認する
ブランチを作成する
新規ブランチでコミットを行う
チェックアウトでブランチを切り替える
3-2ブランチをマージする
マージしてみよう
fast-forwardではないマージを試す
不要なブランチを削除する
3.3コンフリクトに対処する
コンフリクトが起こるのはどんなとき?
コンフリクトを発生させてみよう
P4Mergeを使用したコンフリクトの解決
コンフリクトの前の状態に戻すには
3–4リベースでブランチを統合する
リベースを行ってみよう
リベースの注意点
リベースでコンフリクトが発生したら
3.5リバートで指定したコミットを打ち消す
リバートとは
リバートを行う
コンフリクトが発生したら
3.6タグで目印を設定する
タグを設定する
タグの一覧を表示する
タグを設定したコミットを参照する
タグを設定したコミットをチェックアウトする
タグを削除する
3.7スタッシュで作業内容を退避する
スタッシュとは
スタッシュに退避する
スタッシュを確認する
保存したスタッシュを復元する

第4章GitHubの活用
4.1GitHubのリモートリポジトリを作成する
リモートリポジトリとローカルリポジトリの連携
GitHubにアカウントを登録する
SourcetreeにGitHubアカウントを登録する
リモートリポジトリを作成する
リモートリポジトリをクローンする
42ローカルリポジトリをプッシュする
プッシュを実行する
43リモートリポジトリからプルする
GitHubでコミットを行う
リモート追跡ブランチについて
「プル」はフェッチとムーブを組み合わせたもの
4.4
プルリクエストを利用してチームで作業する
チームで作業するコラボレータを登録する
プルリクエストについて
ブルリクエストの処理が完了したらマージする
閉じられたブルリクエストを確認するには一
4-5フォークでコラボレーション
フォークしてからクローンする
実験用のリポジトリをフォークする
ブランチを作成しプルリクエストを送る

向井 領治 (著) , 大津 真 (著)
出版社: ラトルズ; 初版 (2019/5/28)、出典:出版社HP
全目次 - GitHub実践入門 ~Pull Requestによる開発の変革

●はじめに

本書は、世界中の開発者が行っているGitHubを利用した開発方法を、みなさんが現場で使えるようになるためのガイドとして執筆しました。よって、GitHubの解説だけにとどまらず、開発ワークフローやそれを支えるほかのツールにも踏み込んで解説しています。あなたの開発現場で、次のようなことに心当たりはありませんか?

・コードレビューが十分にできていない。レビューにスピード感がない
・書いた本人しか知らないコード、不安に感じるコードが本番環境にデプロイされる
・書き間違い、思い違いによる簡単なコードのミスにより不具合が多発する
・コードをお互いに見せ合って、知識共有や相互学習・指摘・改善するような機会がない
・1日に何個もの機能を追加できるようなシンプルで高速な開発ワークフローではない

GitHubを活用すれば、この問題を解決するきっかけや機能を提供してくれます。本書にはそのノウハウが凝縮されています。筆者は多数の企業にGitHubを導入し、ワークフローの改善を行いました。それをまとめた本書が開発現場を良くするために必ず役に立つと信じています。

大塚 弘記 (著)
出版社: 技術評論社 (2014/3/20)、出典:出版社HP

 

●本書の構成

本書は、全10章と2つのAppendixにより構成されています。
第1章:GitHubの世界へようこそ
GitHubとは何か、どこが革新的なのかなどを解説しています。オープンソースソフトウェアの世界にGitHubは革命とも言うべきソーシャルコーディングを提供しました。これについて触れるとともに、得られる恩恵や機能を簡単に解説しています。

第2章:Gitの導入
バージョン管理システムであるGitは、GitHubを利用するうえで必須です。本章ではGitの知識と理解を深めるとともに、実際に動作させる
ための手順を解説しています。

第3章:GitHubを利用するための準備
GitHubを利用するにあたり、アカウントの開設(無料)から、本格的に利用する前に設定しておいたほうがよいものなどを手順を追って解説しています。また、動作確認を含めて実際にGitHubにリポジトリを作成し、コードを公開する手順を解説しています。

第4章:Gitを操作しながら学ぶ
GitHubを利用するうえで必要なGitの基本的な知識と操作方法について、実際にGitを操作しながら学んでいきます。
基本的な操作から、複数人で開発するうえで必要になる複雑な操作まで実際に手を動かして一通り実践できます。

第5章:GitHubの機能を徹底解説
GitHubの機能について、画面を一つ一つ確認しながら解説しています。ソースコードビューアとしての機能も詳細に解説しています。快適に動作するUIを味わってください。GitHubを使っている人も、一度目を通すことをお勧めします。明日から使えるTipsを見つけられるはずです。

第6章:はじめてのPullRequest
GitHubを代表する機能であるPullRequestについて、実際に手を動かして試せるように構成しています。ぜひ本書を参考にはじめてのPullRequestを送ってみてください。

第7章:PullRequestが送られてきたら
リポジトリをメンテナンスする側の視点に立って、PullRequestが送られてきた場合にどのように考え、判断し、操作をすればよいのかを
解説しています。

第8章:GitHubと連携するツールとサービス
前半ではGitHubをCLIから操作するためのhubコマンドを解説しています。また、継続的インテグレーションとして、GitHubと連携できるTravisCl、Jenkinsの構築、設定方法について解説しています。そのほか、GitHubと簡単に連携して使えるサービスを多数紹介しています。

第9章:GitHubを利用した開発フロー
GitHubを中心として開発をするGitHubFlow、GitFlowという2つの開発ワークフローについて、詳細に解説しています。それぞれに共通して、チームで開発するための心得から、それぞれのワークフローの特徴を含め、実際に手を動かして体験できる構成にしています。

第10章:会社でGitHubを使おう
会社でGitHubを採用する際に考えるべきことや役立つ情報をまとめています。セキュリティ、障害情報、事前に考えておくべきこと、GitHubEnterpriseの検討など、実際にGitHubを導入をする人が考えるであろうことや知っておくべきノウハウを解説しています。

AppendixA:GitHubをサポートするGUIクライアント
チームの誰もがCLIの操作に慣れているわけではないと思います。そこで、GitHubをサポートするGUIクライアントツールについてまとめています。
AppendixB:Gistで手軽にコードを共有
ちょっとしたサンプルコードやログなどをほかの人と共有するのに役立つ、Gistについて解説しています。日々の小さなコードはこちらを活用すると便利です。
GitHub実践入門
PullRequestによる開発の変革

大塚 弘記 (著)
出版社: 技術評論社 (2014/3/20)、出典:出版社HP

目次 – GitHub実践入門 ~Pull Requestによる開発の変革

はじめに
謝辞
本書の構成
第1章 GitHubの世界へようこそ
1.1 GitHubとは
GitHubCoctocat
ただのGitリポジトリのホスティングサービスではない
GitHubの利用状況
ColumnGitHubとGitの違い
1.2 GitHubを使うと何が変わるのか
コラボレーションの形が変化する
開発者たちが化学反応を起こすPullRequest
特定のユーザへのコメント
GitHubFlavoredMarkdown
Columnこんな書き方もできる!!
他チームのソフトウェアが今まで以上に見える
オープンソースソフトウェアの世界と同じ開発スタイル
1.3 ソーシャルコーディングとは
1.4 ソーシャルコーディングをするべき理由
世界を閉ざさず、多種多様な文化を見よ
コードを書けるプログラマが求められている
GitHubの最大の特徴は「人に目を向ける」こと
1.5 GitHubが提供する主な機能
Gitリポジトリ
Organization
Issue
Wiki
PullRequest
ColumnGitHubで注目されているソフトウェア
1.6 まとめ
参考資料

第2章 Gitの導入
2.1 誕生の背景
2.2 バージョン管理とは
集中型と分散型
集中型
分散型
集中型と分散型はどちらが良いか
2.3 インストール
MacとLinuxの場合
Windowsの場合
コンポーネントの選択
環境変数の設定
改行コードの扱い
GitBash
本書での環境
2.4 初期設定
名前とメールアドレスを設定する
コマンド出力を読みやすくする
2.5 まとめ

第3章 GitHubを利用するための準備
3.1 利用する前の準備
アカウントの作成
アイコンの設定
SSHKeyの設定
公開鍵の登録
ソーシャル機能の利用
3.2 実際に使ってみよう
リポジトリの作成
Repositoryname
Description
Public,Private
InitializethisrepositorywithaREADME
Add.gitignore
Add a license
リポジトリにアクセス
README.md
GitHub FlavoredMarkdown
コードを公開
作成したリポジトリをcloneする
コードを作成する
コミットする
Column 公開する際のライセンス
pushする
3.3 まとめ

第4章 Gitを操作しながら学ぶ
4.1 基本的な操作
git init——リポジトリを初期化
git status——リポジトリの状態を確認
git add——ステージ領域ヘファイルを追加
git commit——リポジトリの歴史を記録
1行のコミットメッセージを記述する
詳細なコミットメッセージを記述する
コミットを中止する
コミット後の状態を確認する
git log——コミットログを確認
コミットメッセージの1行目のみを表示する
指定したディレクトリ、ファイルのみのログを表示する
ファイルの差分を表示する
git diff——変更差分を確認
ワークツリーとステージ領域の差分を確認する
ワークツリーと最新コミットの差分を確認する
4.2 ブランチの操作
git branch—— ブランチを一覧表示
git checkout-b—— ブランチを作成し、切り替える
feature-Aブランチに切り替えコミットする
masterブランチへ切り替える
1つ前のブランチに切り替える
トピックブランチ
統合ブランチ
git merge—— ブランチをマージ
git log –graph—— ブランチを視覚的に確認する
4.3 コミットを変更する操作
git reset—— 歴史を戻る
feature-Aブランチを分岐する前に戻る
fix-Bブランチを作成する
feature-Aブランチをマージしたあとの状態に進む
コンフリクト(競合)を解消
コンフリクト部分を確認し解消する
解消した結果をコミットする
git commit –amendt—— コミットメッセージを修正
git rebase -t—— 歴史を押しつぶして改変
feature-Cブランチを作成する
スペルミスを修正する
歴史を改ざんする
masterブランチにマージする
4.4 リモートリポジトリへの送信
git remote addt——リモートリポジトリを登録
git pusht—— リモートリポジトリへ送信
masterブランチへ送信する masterブランチ以外のブランチへ送信する
4.5 リモートリポジトリから取得
git clone—— リモートリポジトリを取得
リモートリポジトリを取得する リモートのfeature-Dブランチをチェックアウトする ローカルのfeature-Dブランチに変更をコミットする
feature-Dブランチをpushする
git pull — 最新のリモートリポジトリブランチを取得
4.6 さらにGitを奥深く理解するための資料
Pro Git
LearnGitBranching
tryGit
4.7 まとめ

第5章 GitHubの機能を徹底解説
5.1 キーボードショートカット
5.2 ツールバー
UIの解説
1ロゴ
2Notifications
3検索ウィンドウ
4Explore
5Gist
6Blog
7Help
8アバター・ユーザ名
9Create a new …
10Account settings
11Sign out
5.3 ダッシュボード
UIの解説
1News Feed
2Pull Requests
3Issues
4Stars
6broadcast
7Repositories you contribute to
8Your Repositories
5.4 プロフィール
UIの解説
1ユーザ情報
2Popularrepositories
3Repositoriescontributedto
4Publiccontributions
5ContributionActivity
6Repositories
7PublicActivity
5.5 リポジトリ
UIの解説
1ユーザ名(組織名)/リポジトリ名
2Watch/Star/Fork
3Code
4Issues
5PullRequests
6Wiki
7Pulse
8Graphs
9Network
10Settings
11SHcloneURL
12CloneinDesktop
13DownloadZIP
a commits
b branches
c releases
d contributors
e Compare&review
f branch
g path
h ForkthisprojectandCreateanewfile
ファイルに関する操作
Column ファイルを名前の一部から検索する
差分の閲覧
ブランチ間の差分を見る
数日前の差分を見る
指定日からの差分を見る
5.6 Issue
表現力豊かで簡潔な記述方法
シンタックスハイライトする
画像を添付する
ラベルを付けて整理
マイルストーンを付けて管理
Column 貢献するためのルールを知らせよう!
タスクリスト記法
コミットメッセージによるIssueの操作
関連するIssueにコミットを表示する
IssuetをCloseする
特定のIssueをPull Requestに変換
5.7 Pull Request
Column diff形式とpatch形式のファイルを取得
Conversation
Column コメントの引用
Commits
Column コメントで絵文字を活用する
Files Changed
5.8 Wiki
Pages
History
Column Wikiにサイドバーを表示する
5.9 Pulse
active pull requests
active issues
commits
Releases published
Unresolved Conversations
5.10 Graphs
Contributors
Commit Activity
Code Frequency
Punchcard
5.11 Network
5.12 Settings
Options
①Settings
②Features
③GitHub Pages
④Danger Zone
Collaborators
Webhooks & Services
Deploy Keys
5.13 Notifications
5.14 Zolto
GitHub Pages
GitHub Jobs
GitHub Enterprise
GitHub API
5.15 まとめ
Column Macの通知センターでGitHubのNotificationsを確認

第6章 はじめてのPull Request
6.1 Pull Requestの概要
Pull Requestとは
Pull Requestの流れ
6.2 Pull Requestを送る準備
修正するソースコードを確認
Fork
clone
branch
トピックブランチで作業する理由
ブランチを確認する
トピックブランチを作成する
コードを追加
変更をコミット
リモートブランチの作成
6.3 Pull Requestを送る
6.4 Pull Requestをより効果的に使う方法
開発の途中でも論議するためにPull Requestを送る
開発途中であることを明確にする
ForkせずにブランチからPull Requestを送る
6.5 リポジトリのメンテナンス
リポジトリのFork、clone
オリジナルのリポジトリに名前を設定
最新のデータを取得
6.6 まとめ

第7章 Pull Requestが送られてきたら
7.1 Pull Requestを取り込む方法
7.2 Pull Requestを取り込む準備
コードレビュー
画像の差分を確認
2-up
Swipe Onion Skin
Difference
Pull Requestの内容を手元の開発環境に反映
受信側のローカルリポジトリを最新にする
送信側のリモートリポジトリを取得する
確認用のブランチを作成する
マージする
ブランチを削除する
Column コードマネジメントスキルを伸ばすには
7.3 Pull Requestを取り込む
メインのブランチにマージ
変更をpush
7.4 まとめ
Column 相互学習の場を作り上げるのに協力してください

第8章 GitHubと連携するツールとサービス
8.1 hubコマンド
概要
セットアップ
インストールする
動作確認する
エイリアスを設定する
シェルでの補完を実現する
~/.config/hubについて
コマンド
hub clone
hub remote add
hub fetch
hub cherry-pick
hub fork
hub pull-request
hub checkout
hub create
hub push
hub browse
hub compare
Column hubコマンドをGitHub Enterpriseに対応する
8.2 Travis CI
概要
使ってみる
設定ファイルを書く
設定ファイルに問題がないかチェックする
GitHubと連携する
Travis CIの結果をREADME.mdに追加する
8.3 Coveralls
概要
セットアップ
サインアップする
対象リポジトリを追加する
設定ファイルを記述する
gemを追加する
レポートを確認する
8.4 Gemnasium
8.5 Code Climate
8.6 Jenkins
概要
インストール
botアカウントを作成
botアカウントの権限設定
個人アカウントの場合
Organizationアカウントの場合
設定を確認する
JenkinsへのSSH鍵の設定
Jenkinsをはじめて利用する場合
すでにJenkinsを利用している場合
GitHub pull request builder pluginのインストール
Git pluginの設定
Github pull requests builder
Github server api URL
Access Token
Admin list ジョブの作成と設定
GitHub project
ソースコード管理
ビルド・トリガ
ビルド
結果の通知
テストを実行中のステータス
Failed
All is well
commit status コメントによるコントロール
ジョブを実行する
「White list」に登録する
もう一度ジョブを実行する
コメントする文字を変更する
8.7 まとめ
Column CoderwallでGitHubのプロフィールを作成

第9章 GitHubを利用した開発フロー
9.1 チームでGitHubを利用するうえで意識すべきこと
すべてをシンプルに
プロジェクト管理ツールとGitHubの違い
プロジェクト管理ツールとGitHubが異なる理由
リポジトリをForkしない方法
9.2 GitHub Flowデプロイを中心にした開発スタイル
9.3 GitHub Flowの流れ
常にデプロイ。リリースという概念はない
新作業はmasterブランチから新ブランチを作成
作成した新ブランチにコミットする
定期的にpushする
Pull Requestを使う
必ずほかの開発者からレビューを受ける
マージ後はすぐにデプロイ
9.4 GitHub Flowを実践するための前提条件
デプロイ作業は完全自動化する
デプロイツールを利用する
Web上でデプロイを実行するツール
開発に取り入れる際の注意
テストを重要視する」
テストを自動化する
テストを書き、すべてのテストを通過する
テストコードをメンテナンスする
9.5 GitHub Flowを疑似体験
Fizzbuzzの仕様
新機能を追加
新しいブランチを作成
新たにcloneする場合
以前にcloneしたことがある場合
トピックブランチを作成する
新機能を実装
Pull Requestを作成
フィードバックを受ける インデントを修正
テストを追加
Pull Requestを育てる
Pull Requestがマージされる
9.6 GitHub Flowをチームで実践するために
Pull Requestのサイズを小さくする
試せる環境を用意する
Pull Requestへのフィードバックを多くしすぎない
Pull Requestをためないようにする
9.7 GitHub Flowのまとめ
9.8 Git Flow——リリース中心の開発スタイル
理解しやすい標準的な流れ
複雑すぎる場合がある
9.9 Git Flowを導入するための準備
git-flowのインストール
Macの場合
Linuxなどの場合
動作確認
リポジトリの初期設定
リポジトリを作成する
git flowの初期設定を行う
リモートリポジトリにもdevelopブランチを作成する
9.10 Git Flowを疑似体験
masterブランチとdevelopブランチの違い
masterブランチ
developブランチ featureブランチで行うこと
ブランチを作成する
ブランチでの作業を行う
Pull Requestの送信
コードレビューでコードの品質を向上 ローカルのdevelopブランチを更新
releaseブランチで行うこと
Column デフォルトブランチを設定
ブランチを作成する
ブランチでの作業を行う
リリースとマージを行う
バージョンのタグを確認する

大塚 弘記 (著)
出版社: 技術評論社 (2014/3/20)、出典:出版社HP
全目次 - 独習Git

前書き

数年前、ギターの弾き方を教えるビデオを見ているとき、素晴らしい表現を開いた。複雑な「かき鳴らし」(strumming)パターンのデモンストレーションを、その曲の正しいテンポで、信じられないくらい速く弾いてから、インストラクターが言った。「どうやってるのかわかるように、ゆっくり弾いてみますけれど、それって難しいんです。ゆっくり落ちるのが難しいみたいにね」これが気に入った。

「ゆっくり落ちる」というのが。そういえばGitのデモンストレーションも、信じられないくらい速く見えることがある。デモはしばしばコマンドラインで行われるから、なおさらのように見える。一連のコマンドで実際、何が発生しているのかを、理解できないのだ。
私は、この本でも「テンポ」を落とそうと思う。Gitと相互作用(インタラクション)を行うとき、実際には何が起きるのか、ひとつひとつすべてのステップを観察し、考察できるようにしよう。

このアプローチを採用したのには理由がある。私はGitのプレゼンテーションを、いくつものローカルユーザーグループで行ってきたのだが、個々のコマンドが何を行っているのかを質問されることが多いのだ。プレゼンテーションではそれぞれの質問に対応するのが難しいけれど、一冊の本でならじっくり細部を探索できるというわけだ。
もうひとりのギタリストからも(YouTubeで見たのだが)賢いアドバイスを受け取った。どんな曲でも、正しいテンポで演奏する前に、まずはずっとずっとゆっくり学ぶべきなのだ。ゆっくりやっているうちに、指が正しい動きかたを覚えてくれる。そうして確信を得たあとで、はじめて曲を徐々にスピードを上げて演奏できるのだ。これも気に入った。「ものごとは、ゆっくり学びなさい」Gitのドキュメントに入っているチュートリアルは、詳細を短い段落で説明しているが、この本のアプローチは正反対だ。チュートリアルがただひとつの文で説明している事項に、この本はまるまる1章を費やす。1個のコマンドについて、じっくりと学び、確信を得たらそれを次に使うときもっと速くできるはずだ。
私は、おもに顧客を相手にする仕事で、長いキャリアを過ごしてきた。テクニカルサポートやオンサイトのコンサルティングやトレーニングの仕事だが、そうして人に話をすることで私は学んだ。簡単には理解できないような技術的な詳細を普通の人に落ち着いて聞いて貰えるようにするには、「スピードを落とす」ことがじつははかどる秘訣なのだ。この本は、そのアプローチを採用した結果である。

リック・ウマリ (著), 吉川 邦夫 (翻訳)
出版社: 翔泳社 (2016/2/26)、出典:出版社HP

この本について

本書は、「コーディングのプロだけれど、ソースコードの管理またはGitについては初心者」という人々を主な対象としています。コーディングというのは、コンピュータプログラムだけでなく、CSSファイルやHTMLファイルも含めてですが、その種のコードをファイルにタイプする人ならば誰でもGitを学ぶことによって「自分の仕事を追跡管理できる」という恩恵が得られるでしょう。この本で扱うのは、初心者レベルから中級までのトピックです。
バージョン管理システムに関する知識は、プロの開発者には当然のことと思われがちです。しかし本書は、Git以外のバージョン管理システムに関する知識を前提としていません。実際、この本はGitを「Gitの言葉」で説明するので、他のバージョン管理システムに言及することはしていません。

著者は、あなたがコマンドラインで快適に仕事ができることを願っていますが、もしそうでなくても心配は無用です。ひとつひとつのコマンドを丁寧に説明していきます。そのうちに、あなたはだんだんこのスキルに慣れ、快適になっていくはずです。また、この本ではGitを使いやすくする様々なGUIも紹介します。

もしあなたが本当の初心者ならば、最初の章から順番に読んでください。それぞれの章は、毎日のランチアワーに読めるように書いてあります。その1時間で章のテキストを読み、その章の「演習」というコラムもこなせるでしょう。また、各章の末尾にある「課題」は、その章のポイントを補強するものですが、お暇なときの復習にも使えます。

「演習」には時間をかけてください。これらを実際に行うことで、Gitをより良く理解できるでしょう。それぞれの意であなたが作業するリポジトリは、まったくあなた自身の持ち物です。それぞれの章で安全に実験できる環境あるいは状況を作成します。一部の章で、リポジトリを「既知の作業状態」に作り直すには、本書のWebサイトhttp://www.manning.com/umaliからダウンロードできるコード(SourceCode)を使えます。
それぞれの章に、イラストレーションやスクリーンショットを大量に入れてあります。Gitがあなたのコードと履歴(ヒストリー)をどのように組織して管理するかを示すために、概念図も入れてあります。これらの図をゆっくり見ながら、課題を解くのにGitをどう使えばよいのか考えてみてください。末尾には、その章で使ったGitコマンドのリストを添えてあります。

章はグループに分けてあります。基本のトピック、中殺のトピック、高度なトピック、ブランチとマージ、共同作業、そしてGitのエコシステムという順番になっています。これらのグループ分けについては、第1章で概要を説明します。章によっては、それ以前の章を前提としている内容もあります。もしあなたが初心者ではなく、最初の部分を読み飛ばすことにしたら、その点にご注意ください。

第1章から第6章で扱う基本のトピックには、リポジトリをセットアップする方法、リポジトリにファイルを追加しコミットする方法、リポジトリの状態を問い合わせ、履歴を見る方法が含まれます。ひとりで開発する方なら、たぶん必要な事項の8割はこれらの章で間に合うでしょう。

中級のトピック(第7章と第8章)では、Gitのステージングエリアに注目し、あなたのリポジトリの各部をアクセスする方法も学びます。高度なトピック(第15章と第16章)では、リポジトリの履歴を問い合わせるための、また履歴を操作するための興味深い方法を伝授します。ブランチとマージを扱う第9章と第10章では、Gitの最も重要な特徴のひとつである「素早いブランチ」の使い方を詳しく説明します。この2章を読んだら、あなたのコードベースにある何かに実験的なブランチを落なく気軽に作れるようになるでしょう。

第11章から第14章では、Gitの共同作業(collaboration)コマンドを正しく使って他の人々と協力する方法を説明します。もしあなたが、プッシュとプルについて混乱したことがあったとしても、これら4章を読めば、すっきりと理解できるはずです。

Gitのエコシステムに関する3つの章(第17章、第18章、第19章)では、サードパーティ製ツール、ユーザーインタフェース、そしてGitHubについて学びます。Gitを使いやすくするユーザーインタフェースやツールによってGitは多くのユーザーを獲得しましたが、もっと広く、オープンソースコミュニティ全般にGitが普及したのは、GitリポジトリをホスティングするGitHubの功績です。

最後の第20章では、あなたの環境に合わせてGitをカスタマイズする方法を示します。これを最後にもってきたのは、何か新しいシステムを学ぶにはそのデフォルトの初期設定で使うのが早道だと信じているからです。とはいえ、本書を読んでいる途中で、この章をざっと見ておくのも便利かもしれません。

リック・ウマリ (著), 吉川 邦夫 (翻訳)
出版社: 翔泳社 (2016/2/26)、出典:出版社HP

目次 – 独習Git

前書き
この本について
謝辞
第1章:はじめに
1.1 Gitの特徴、
1.2 この本の対象は?
1.3 この本の読み方
1. 4Gitのインストール
U nix / Linux/ Mac /Windows
1.5 学習経路 (Learning Path)
1. 6オンライン・リソース
1.7 即座に効果を上げる

第2章:Gitとバージョン管理の概要」
2.1 バージョン管理の諸概念
ソフトウェア開発者のバージョン管理
組におけるバージョン管理 .
リポジトリとは何か
コミットとは何か
ブランチとは何か
2.2Gitの主な特徴
分散されたリポジトリ
素早いブランチ.
ステージングエリア Git高速ツアー
GUIでリポジトリを見る。
コマンドラインでリポジトリを見る
2.4 バージョン管理の用語

第3章:Gitに馴染む
3.1 最初の設定
3.2 コマンドを使う
Gitのコマンドライン構文
共通コマンド .
3.3 コマンドラインの効率を高める
3.4 Gitヘルプを使う
3.5 長い出力をページャーで制御する
3. 6 課題
3.7 さらなる探究
3.8 この章のコマンド

第4章 リポジトリの作り方と使い方
4.1 リポジトリの基礎を理解する
4. 2git initで新しいリポジトリを作る
4. 3git statusとgit addでファイルを追跡する
git statusでリポジトリの状態をチェックする.
git oddでファイルをリポジトリに追加する
4. 4git commitでファイルをコミットする
4. 5 git logとgit ls-filesで、リポジトリを調べる
4. 6課題
4.7 この章のコマンド

第5章:GUIでGitを使う
5.1 Git GUIを起動する。
WindowsでGit GUIを起動する….
5.2 Git GUIでリポジトリを作る。
5.3 Git GUIでファイルをリポジトリに追加する
5. 4履歴を見る
5. 5 課題
5.6 さらなる探究」
Git用の、その他のGUI
Tol とTk とWish
5.7 この章のコマンド。

第6章:ファイルの追跡と更新
6.1 単純な変更を行う
新しいリポジトリを作る…
変更をGitに知らせる。
「どこが違うのか」を見る
変更をリポジトリに追加・コミットする
6.2 git oddについて考える
たとえ話によるステージングエリアの紹介。
変更をステージングエリアに追加する一
ステージングエリアの更新…
ステージングエリアを理解する
変更をコミットする
6.3 複数のファイルを追加する。
6. 4課題
コマンドラインのニュアンスを理解する…
トラブルを切り抜ける。
自分のファイルを追加する…
6.5 さらなる探究
6.6 この章のコマンド

第7章:変更箇所をコミットする
7.1 Gitからファイルを削除する
7.2 Gitでファイル名を変更する。
7.3 リポジトリにディレクトリを追加する
7.4 変更箇所を追加する。
ステージのたとえ話を考え直す
いつコミットすべきかを考える.
Git GUIを使って、ファイルを部分的にコミットする
git add-pを使ってファイルを部分的にコミットする
ステージングエリアから変更を削除する.
ファイルを最後にコミットしたバージョンに戻す
部分的にコミットした結果を理解する
7. 5課題
複数のハンクを使う作業..
削除を取り消す。
課題図書
7.6 この章のコマンド

第8章:Gitというタイムマシン
8. 1 git logを使う
SHA1 IDを使う
コミットのメタ情報と親子関係を調べる
gitkでコミットの履歴を見る
ファイルでコミットを検索する
各種のgit logを使
8.2 適切なコミットログメッセージを書く
8.3 特定のバージョンをチェックアウトする
HEAD、masterなどの名前を理解する
gitcheckoutで時間を測る
8. 4以前のバージョンにタグを付ける
8. 5 課題
ヒストリーを見る(第1部)
直前のコミットを修正する
別の形式でコミットを指定する
「detached HEAD」状態でコミットする
タグを削除する….
ヒストリーを見る(第2部)
8.6 さらなる探究」
8. 7この章のコマンド

第9章:ブランチ (支線)を辿る
9. 1ブランチの基礎
リファレンスの作成
「master は単なる例です」
9. 2いつ、どうやってブランチを作るか
ブランチで新しいコードを入れる
ブランチで修正を入れる
9.3 その他のブランチ操作を実行する
より高速なブランチ
ブランチの削除
9.4 ブランチを安全に切り替える
作業をスタッシュにする
スタッシュをポップする
9.5課題
GUIを使ってプランチの作業をする
頭の準備運動
another_fix_branchで作業を続ける
複数のブランチを見る
9. 6さらなる探究
9. 7この章のコマンド
第10章ブランチをマージ(統合)する
10.1 マージを「合流」に見立てる
10.2 マージを実行する
少なくとも2本のブランチから
本のブランチの差分をチェックする
マージを実行する
マージコミットの親
Git GUIでマージを実行する
10.3 マージの競合に対処する
Gitが対処できない差分を理解する
競合するハンクを直接編集してファイルをマージする
マージツールでファイルをマージする
マージを中止する
10.4 fast-forwardマージを実行する
「直系の子孫」という概念を理解する
fast-forwardマージを行う
10.5課題
10.6 さらなる探究
git merge-baseでマージのペースを算出する
競合の表示方法を変更する (merge.conflictStyle)
オクトパスマージを実行する。
10.7 この章のコマンド

第11章:クローン(複製)を作る
11.1 複製:ローカルなコピーを作る
git cloneを使う
複製の中でブランチを見る
ブランチをチェックアウトする
11.2 ベアリポジトリを使う作業
Gitリポジトリのファイルを見る
git cloneでペアリポジトリを作る
ベアリポジトリからのクローニング
11.3 git ls-treeでリポジトリ内のファイルを見る
11.4課題
11.5 さらなる探究
11.6 この章のコマンド.

第12章 リモートとの共同作業
12.1 リモートは遠く離れた場所
git remoteで複製元を分析する
リモートの名前を変える…..
リモートを追加する…
12.2 リモートを調査する
12.3 遠く離れた場所からクローンを作る
12.4課題
あなたのmath githubクローンを調べる…..
手作業でリモートを作る。
git remoteのその他のサブコマンドー
Git GUIで複製を作る…
もうひとつのリモートURLをアクセスする…
12.5 さらなる探究
12.6この章のコマンド

第13章変更をプッシュ(送出)する
13.1 プッシュは変更をリモートに送り出す
バーミッションが必要です
ブッシュにはブランチとリモートが必要
gitpushの成功を確認する
13.2 プッシュの競合を理解する
13.3 ブランチをプッシュする.
13.4 リモートにあるブランチを削除する
13.5 タグのブッシュと削除
13.6 プッシュをsimpleに設定する。
13.7 課題
13.8 さらなる探究
13.9 この章のコマンド

第14章同期を保つ (ブル)
14.1 共同作業のサイクルを完結させる
14.2git pullを使う(2部構成)
リモートリポジトリからファイルを取得する(git fetch)
2本のブランチをマージする(git merge)
14.3 git pullのマージ
きれいなマージー
自動的にコミットされないクリーンマージ—
自動的にコミットされるクリーンマージ –
競合するマージ
14.4 ブルをfast-forwardに限定する。
14.5 pullの代わりにfetchとmergeを使う
14.6課題
14.7 この章のコマンド

第15章:ソフトウェア考古学
15.1git logを理解する
git logの基本(復習)
コミットの表示を制限する
git logで差分を見る
gitname-revでコミットの名前を得る。
15.2gitkのビュー編集を理解する
gitkに特定のブランチだけ表示させる
簡易なピューを使う
15.3 ファイルを調べる
関連するファイルを探す(git grep)
特定のファイルの履歴を調べる
15.4 コードの特定の行を更新したリビジョンを探す
git blameをGUIで実行する
コマンドラインでgit blameを使う
15.5 あとから来る人のためにメッセージを残す
15.6課題
15.7 さらなる探究
15.8この章のコマンド

第16章igit rebaseを理解する
16.1git rebaseの2つのユースケース、
git rebaseを使って上流の更新に対応する
git rebaseで履歴を整理する
16.2 第1のケース:上流に追いつく
16.3git reflogとgit resetを使ってリポジトリを元に戻す
16.4 第2のケース:履歴を整理する
16.5 課題
16.6 さらなる探究
チェリーピッキング
コミットの削除
16.7 この章のコマンド

第17章:ワークフローとブランチの規約
17.1Gitに必要な規約
コミットの規約
コードのブッシュに関する規約
ブランチの規約
リペースの利用に関する規約。
タグ付けの規約
17.2 Gitの2つのワークフロー
17.3git-flow
featureブランチを作る
releaseプランチを作る.
17.4 GitHubのフロー
17.5課題
17.6 さらなる探究
17.7 この章のコマンド

第18章GitHubを使う
18.1 GitHubの基本を理解する
GitHubアカウントの作成.
リポジトリを作る
リポジトリとの対話処理
18.2 フォークを使う
GitHubでフォークを作る
自分のフォークを複製する
18.3プルリクエストによる共同作業
フォークに変更を加える
ブルリクエストを発行する
プルリクエストをクローズする
18.4課題
18.5 さらなる探究
18.6 この章のコマンド

第19章・サードパーティ製ツールとGit
19.1 SourceTree
SourceTreeをインストールする
リボジトリをSourceTreeに追加する
ファイルをステージングする
SourceTreeでGitコマンドを追跡する
SourceTreeでファイルをコミットする
「ログ」表示
19.2 Git Eclipse IDE
Eclipseをインストールする
リポジトリをEclipseに追加する
ファイルのステージングとコミット
「ヒストリー」ビュー
19.3 その他のサードパーティ製ツール
19.4課題

第20章:Gitを研ぎすませる
20.1git configコマンドの紹介
Gitの構成変数を使う
Git構成の優先順位を理解する
Gitの構成を一時的に設定する
Gitの構成を永続的に設定する
Gitの構成をリセットする
20.2 Git構成ファイル
Git構成ファイルを編集する
Git構成ファイルの構文
20.3 Gitのデフォルトエディタを設定する
20.4無視すべきファイルの設定
20.5 Gitの学習を続ける
クローンで作業する
ヘルプを使う
こまめにコミットする
共同作業を行う
20.6課題
20.7 この章のコマンド
索引

リック・ウマリ (著), 吉川 邦夫 (翻訳)
出版社: 翔泳社 (2016/2/26)、出典:出版社HP
全目次 - わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉

はじめに

せっかく学ぶなら、やっぱり楽しい方がいい
「Gitって難しそう」 「勉強しようとは思っているけど、なかなか一歩が踏み出せない」 そんな方のために、楽しくGitを理解できる本を作りました。
・個性的なキャラクターたちが登場するマンガ
・感覚的にわかる図解
・丁寧な実践パート
上記3つの特長で、Gitを無理なく学べます。

基本の使い方はもちろん、プルリクエストの練習や、GitHub PagesでのWebページ公開ができるようになるよ!

こんな方にオススメ
・新入社員……Gitが使えて当たり前の会社に就職したので、勉強したい
・Webデザイナー・コーダー……エンジニアと一緒に、Gitで共同作業したい
・Gitに乗り換えたいエンジニア……..今まで使っていたバージョン管理システムから、Gitに乗り換えたい
・小さな会社のWeb担当……そろそろ手動バックアップを卒業したい
・企画・営業担当……制作側のことも知っておきたい

クリックしていくだけでGitを使えるツールを中心に解説している から、初心者でも安心よ。

湊川 あい (著) , DQNEO (監修)
出版社: シーアンドアール研究所 (2017/4/21)、出典:出版社HP

目次 – わかばちゃんと学ぶ Git使い方入門

CONTENTS
・プロローグ ………….
・登場キャラクターの紹介
・はじめに
……
CHAPTER 1 Gitって何?
01 Gitで解決できること
02 コミュニケーションの場としてのGitHub・Bitbucket
…….
………
CHAPTER 2 個人でGitを使ってみよう
03 Gitを簡単に使えるツールをインストールしよう
04 リポジトリを作ろう
05 コミットしてみよう….
COLUMN ステージングエリアから降ろしたい場合は?…………
COLUMIN コミットメッセージはなぜ必要? ……
06 チェックアウトでコミットを移動してみよう・・・・・……………………
COLUMN コミットログに表示されている英数字は何?…
COLUMN 分散型バージョン管理システムって何?

CHAPTER3 複数人でGitを使ってみよう
07 GitHubのアカウントを作ろう …
COLUMN GitHubのプランについて………….
08 練習用のリポジトリをコピーしてこよう
09 並行世界を作ろう(ブランチ)
10 ブランチを統合してみよう(マージ)
11 プッシュしよう……
12 プルしよう
13 コンフリクトが起きたら? …. ….
14 プルリクエストからマージまで ……
15 バージョン管理しなくてもいいファイルを無視しよう……
16 Bitbucketの使い方……
COLUMN ブランチの運用ルール………
…………….
CHAPTER 4 実用Git~こんなときはどうすればいい?
17 過去に戻って新規ブランチを作成、作業をやり直したい ………
18 過去のコミットを打ち消したい(リバート)・・
19 履歴を一直線にしたい(リベース)………………………………
20 コミットを1つにまとめたい(スカッシュ)……
21 プルは実際には何をやっているの?
22 リモートリポジトリから最新の状態を取得したい(フェッチ) ……
23 不要になったリモートブランチを削除したい………
24 直近のコミットメッセージを修正する
………..
25 未コミットのファイルを一時退避する(スタッシュ) ……
26 別ブランチから特定のコミットのみを取り込みたい
(チェリーピック)…….
27 コミットに目印をつける(タグ)………
28 間違えてHEADに直接コミットしてしまったら … …

CHAPTER 5 Gitで広がる世界
29 Github PagesでWebページを公開してみよう
COLUMN GitHub Pagesでできるこんなこと!…………
30Gitを使うとうれしいこと
COLUMN オープンソース/ソーシャルコーディングの世界

おわりに…

索引

湊川 あい (著) , DQNEO (監修)
出版社: シーアンドアール研究所 (2017/4/21)、出典:出版社HP