Mac

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

本書は、プログラミングをしないMacユーザーをとくに意識した、Gitの入門書です。
Gitの知識がまったくない段階から始めて、主要機能をしっかり理解し、GitHubの共有機能までたどり着くことを目標にしています。
過去に挫折した方や、いまさら人に質問できない方、こっそりマスターして同僚に差をつけたい方にもおすすめです。
プログラマーの間でGitの人気は高まる一方ですが、「最近では、ノンプログラマーにとってもその利便性が認められてきています。」
たとえば、ソフトウェア開発のプロジェクトにプログラマー以外の立場で参加する場合や、
そもそもプログラムではない一般的な文書作成の目的で、Gitの基礎知識を必要とされるケースが増えてきています。
しかしGitはもともと大規模なソフトウェア開発のために作られたもので機能が多く、
独特な用語が多い上に、ほとんどの解説書では読者がプログラマーであることを前提にしているため、
ノンプログラマーにとっては最初の手掛かりにさえ悩むケースがあります。
【本書の執筆方針】
1. 一般的なMac用アプリケーションと同じ感覚でGitを利用できる「Sourcetree」というアプリケーションを使います。
「ターミナル」やコマンド入力は扱いませんが、用語や機能を本書で学んでおけば、将来本格的に使いたくなったときにも役立つでしょう。
2.サンプルには、単純な日本語の文書を使います。
プログラミングの知識は必要ありませんし、操作結果の変化もわかりやすくしています。
3. 採りあげるアプリケーションやサービスは、すべて無料です。
規模が大きくなると有料になるものもありますが、独習や、少人数のプロジェクトであれば費用はかかりません。
Gitの知識がまったくない段階から始めて、主要機能をしっかり理解し、GitHubの共有機能までたどり着くことを目標にしています。
過去に挫折した方や、いまさら人に質問できない方、こっそりマスターして同僚に差をつけたい方にもおすすめです。
プログラマーの間でGitの人気は高まる一方ですが、「最近では、ノンプログラマーにとってもその利便性が認められてきています。」
たとえば、ソフトウェア開発のプロジェクトにプログラマー以外の立場で参加する場合や、
そもそもプログラムではない一般的な文書作成の目的で、Gitの基礎知識を必要とされるケースが増えてきています。
しかしGitはもともと大規模なソフトウェア開発のために作られたもので機能が多く、
独特な用語が多い上に、ほとんどの解説書では読者がプログラマーであることを前提にしているため、
ノンプログラマーにとっては最初の手掛かりにさえ悩むケースがあります。
【本書の執筆方針】
1. 一般的なMac用アプリケーションと同じ感覚でGitを利用できる「Sourcetree」というアプリケーションを使います。
「ターミナル」やコマンド入力は扱いませんが、用語や機能を本書で学んでおけば、将来本格的に使いたくなったときにも役立つでしょう。
2.サンプルには、単純な日本語の文書を使います。
プログラミングの知識は必要ありませんし、操作結果の変化もわかりやすくしています。
3. 採りあげるアプリケーションやサービスは、すべて無料です。
規模が大きくなると有料になるものもありますが、独習や、少人数のプロジェクトであれば費用はかかりません。

第1章●Gitの概要と操作環境の準備
1-1 Gitの特徴▶
1.1.1 Gitとバージョン管理システム
1.1.2 手動バージョン管理の問題点
1.1.3 Time Machineではダメなのか
1-2 Gitを使うには▶
1.2.1 1台の中で使う・共有して使う
1.2.2 GitとGitHub
1.2.3 集中型と分散型
1-3 CotEditorを準備する▶
1.3.1 CotEditorとは
1.3.2 なぜテキストエディタを使うのか
1.3.3 CotEditorのインストール
1-4 Sourcetreeを準備する▶
1.4.1 Sourcetreeとは
1.4.2 なぜSourcetreeを使うのか
1.4.3 Sourcetreeのインストール
第2章●Gitのプロジェクトを始めよう
2-1 リポジトリを作成する▶
2.1.1 プロジェクトフォルダと作業ツリー
2.1.2 プロジェクトフォルダを登録する
2.1.3 Gitが内部で使用する「.git」フォルダ
2.1.4 リポジトリブラウザ
2.1.5 リポジトリウインドウ
2.1.6 Sourcetreeからリポジトリを作成する
2-2 リポジトリを削除する▶
2.2.1 リポジトリを削除する
2.2.2 プロジェクトフォルダを直接扱うときの注意
2-3 リポジトリへファイルを登録する▶
2.3.1 追跡するファイルを登録する
2.3.2 コミットIDについて
2-4 追跡したくないファイルを登録する▶
2.4.1 無視するファイルを登録する
2.4.2 無視するフォルダを登録する
2.4.3 無視するパターンを登録する(個別リポジトリ)
2.4.4 無視するパターンを登録する(すべてのリポジトリ)
2.4.5 さまざまなパターンの指定方法
2.4.6 登録した無視リストを修正する
2-5 変化を登録する▶
2.5.1 内容を追加して記録する
2.5.2 既存の内容を編集して記録する
2.5.3 変化は行単位で表示する
2.5.4 改行も変化として扱われる
2-6 履歴を取り出す▶
2.6.1 履歴を取り出す
2.6.2 ダーティな状態でチェックアウトすると
2-7 ステージを使う▶
2.7.1 ステージとは
2.7.2 ステージを使ってコミットする
2.7.3 ステージへは作業ツリーからコピーされる
2.7.4 ステージを取り消す・やり直す場合
2-8 ファイルを操作する▶
2.8.1 ファイルを削除する
2.8.2 ファイルの名前を変える
2.8.3 ファイルを個別に復元する
2.8.4 追跡をやめる
2-9 差分を詳しく調べる▶
2.9.1 任意のコミット間の差分を調べる
2.9.2 特定のファイルのログを調べる
2.9.3 別のアプリを使って差分を調べる
2.9.4 コミットメッセージの書き方
2.9.5 コミットメッセージにテンプレートを設定する
2-10 作業をやり直す▶
2.10.1 直前のコミットのメッセージを書き換える
2.10.2 直前のコミットをやり直す
2.10.3 直前のコミットへ戻す
2-11 過去のコミットへ戻す▶
2.11.1 実験用のリポジトリを作る
2.11.2 Mixedオプション
2.11.3 Softオプション
2.11.4 Hardオプション
2.11.5 もしもチェックアウトして作業を続けると
第3章●ローカルでのGitの活用
3-1 ブランチの基本操作
3.1.1 ブランチとマージについて
3.1.2 masterブランチを確認する
3.1.3 ブランチを作成する
3.1.4 新規ブランチでコミットを行う
3.1.5 チェックアウトでブランチを切り替える
3-2 ブランチをマージする▶
3.2.1 マージしてみよう
3.2.2 fast-forwardではないマージを試す
3.2.3 不要なブランチを削除する
3-3 コンフリクトに対処する▶
3.3.1 コンフリクトが起こるのはどんなとき?
3.3.2 コンフリクトを発生させてみよう
3.3.3 P4Mergeを使用したコンフリクトの解決
3.3.4 コンフリクトの前の状態に戻すには
3-4 リベースでブランチを統合する▶
3.4.1 リベースを行ってみよう
3.4.2 リベースの注意点
3.4.3 リベースでコンフリクトが発生したら
3-5 リバートで指定したコミットを打ち消す▶
3.5.1 リバートとは
3.5.2 リバートを行う
3.5.3 コンフリクトが発生したら
3-6 タグで目印を設定する▶
3.6.1 タグを設定する
3.6.2 タグの一覧を表示する
3.6.3 タグを設定したコミットを参照する
3.6.4 タグを設定したコミットをチェックアウトする
3.6.5 タグを削除する
3-7 スタッシュで作業内容を退避する▶
3.7.1 スタッシュとは
3.7.2 スタッシュに退避する
3.7.3 スタッシュを確認する
3.7.4 保存したスタッシュを復元する
第4章●GitHubの活用
4-1 GitHubのリモートリポジトリを作成する▶
4.1.1 リモートリポジトリとローカルリポジトリの連携
4.1.2 GitHubにアカウントを登録する
4.1.3 SourcetreeにGitHubアカウントを登録する
4.1.4 リモートリポジトリを作成する
4.1.5 リモートリポジトリをクローンする
4-2 ローカルリポジトリをプッシュする▶
4.2.1 プッシュを実行する
4-3 リモートリポジトリからプルする▶
4.3.1 GitHubでコミットを行う
4.3.2 リモート追跡ブランチについて
4.3.3 「プル」はフェッチとムーブを組み合わせたもの
4-4 プルリクエストを利用してチームで作業する▶
4.4.1 チームで作業するコラボレータを登録する
4.4.2 プルリクエストについて
4.4.3 プルリクエストの処理が完了したらマージする
4.4.4 閉じられたプルリクエストを確認するには
4-5 フォークでコラボレーション▶
4.5.1 フォークしてからクローンする
4.5.2 実験用のリポジトリをフォークする
4.5.3 ブランチを作成しをプルリクエストを送る
1-1 Gitの特徴▶
1.1.1 Gitとバージョン管理システム
1.1.2 手動バージョン管理の問題点
1.1.3 Time Machineではダメなのか
1-2 Gitを使うには▶
1.2.1 1台の中で使う・共有して使う
1.2.2 GitとGitHub
1.2.3 集中型と分散型
1-3 CotEditorを準備する▶
1.3.1 CotEditorとは
1.3.2 なぜテキストエディタを使うのか
1.3.3 CotEditorのインストール
1-4 Sourcetreeを準備する▶
1.4.1 Sourcetreeとは
1.4.2 なぜSourcetreeを使うのか
1.4.3 Sourcetreeのインストール
第2章●Gitのプロジェクトを始めよう
2-1 リポジトリを作成する▶
2.1.1 プロジェクトフォルダと作業ツリー
2.1.2 プロジェクトフォルダを登録する
2.1.3 Gitが内部で使用する「.git」フォルダ
2.1.4 リポジトリブラウザ
2.1.5 リポジトリウインドウ
2.1.6 Sourcetreeからリポジトリを作成する
2-2 リポジトリを削除する▶
2.2.1 リポジトリを削除する
2.2.2 プロジェクトフォルダを直接扱うときの注意
2-3 リポジトリへファイルを登録する▶
2.3.1 追跡するファイルを登録する
2.3.2 コミットIDについて
2-4 追跡したくないファイルを登録する▶
2.4.1 無視するファイルを登録する
2.4.2 無視するフォルダを登録する
2.4.3 無視するパターンを登録する(個別リポジトリ)
2.4.4 無視するパターンを登録する(すべてのリポジトリ)
2.4.5 さまざまなパターンの指定方法
2.4.6 登録した無視リストを修正する
2-5 変化を登録する▶
2.5.1 内容を追加して記録する
2.5.2 既存の内容を編集して記録する
2.5.3 変化は行単位で表示する
2.5.4 改行も変化として扱われる
2-6 履歴を取り出す▶
2.6.1 履歴を取り出す
2.6.2 ダーティな状態でチェックアウトすると
2-7 ステージを使う▶
2.7.1 ステージとは
2.7.2 ステージを使ってコミットする
2.7.3 ステージへは作業ツリーからコピーされる
2.7.4 ステージを取り消す・やり直す場合
2-8 ファイルを操作する▶
2.8.1 ファイルを削除する
2.8.2 ファイルの名前を変える
2.8.3 ファイルを個別に復元する
2.8.4 追跡をやめる
2-9 差分を詳しく調べる▶
2.9.1 任意のコミット間の差分を調べる
2.9.2 特定のファイルのログを調べる
2.9.3 別のアプリを使って差分を調べる
2.9.4 コミットメッセージの書き方
2.9.5 コミットメッセージにテンプレートを設定する
2-10 作業をやり直す▶
2.10.1 直前のコミットのメッセージを書き換える
2.10.2 直前のコミットをやり直す
2.10.3 直前のコミットへ戻す
2-11 過去のコミットへ戻す▶
2.11.1 実験用のリポジトリを作る
2.11.2 Mixedオプション
2.11.3 Softオプション
2.11.4 Hardオプション
2.11.5 もしもチェックアウトして作業を続けると
第3章●ローカルでのGitの活用
3-1 ブランチの基本操作
3.1.1 ブランチとマージについて
3.1.2 masterブランチを確認する
3.1.3 ブランチを作成する
3.1.4 新規ブランチでコミットを行う
3.1.5 チェックアウトでブランチを切り替える
3-2 ブランチをマージする▶
3.2.1 マージしてみよう
3.2.2 fast-forwardではないマージを試す
3.2.3 不要なブランチを削除する
3-3 コンフリクトに対処する▶
3.3.1 コンフリクトが起こるのはどんなとき?
3.3.2 コンフリクトを発生させてみよう
3.3.3 P4Mergeを使用したコンフリクトの解決
3.3.4 コンフリクトの前の状態に戻すには
3-4 リベースでブランチを統合する▶
3.4.1 リベースを行ってみよう
3.4.2 リベースの注意点
3.4.3 リベースでコンフリクトが発生したら
3-5 リバートで指定したコミットを打ち消す▶
3.5.1 リバートとは
3.5.2 リバートを行う
3.5.3 コンフリクトが発生したら
3-6 タグで目印を設定する▶
3.6.1 タグを設定する
3.6.2 タグの一覧を表示する
3.6.3 タグを設定したコミットを参照する
3.6.4 タグを設定したコミットをチェックアウトする
3.6.5 タグを削除する
3-7 スタッシュで作業内容を退避する▶
3.7.1 スタッシュとは
3.7.2 スタッシュに退避する
3.7.3 スタッシュを確認する
3.7.4 保存したスタッシュを復元する
第4章●GitHubの活用
4-1 GitHubのリモートリポジトリを作成する▶
4.1.1 リモートリポジトリとローカルリポジトリの連携
4.1.2 GitHubにアカウントを登録する
4.1.3 SourcetreeにGitHubアカウントを登録する
4.1.4 リモートリポジトリを作成する
4.1.5 リモートリポジトリをクローンする
4-2 ローカルリポジトリをプッシュする▶
4.2.1 プッシュを実行する
4-3 リモートリポジトリからプルする▶
4.3.1 GitHubでコミットを行う
4.3.2 リモート追跡ブランチについて
4.3.3 「プル」はフェッチとムーブを組み合わせたもの
4-4 プルリクエストを利用してチームで作業する▶
4.4.1 チームで作業するコラボレータを登録する
4.4.2 プルリクエストについて
4.4.3 プルリクエストの処理が完了したらマージする
4.4.4 閉じられたプルリクエストを確認するには
4-5 フォークでコラボレーション▶
4.5.1 フォークしてからクローンする
4.5.2 実験用のリポジトリをフォークする
4.5.3 ブランチを作成しをプルリクエストを送る