- Gitは高速なので気軽にブランチ/マージを繰り返しながら試行錯誤できる
- ブランチを繰り返しmasterから階層が離れるほど不安定バージョンになる
- ディレクトリを指定した場合は、そのディレクトリ以下にあるすべてのファイルを再帰的に追加
よく使う操作
| コマンド | 説明 | 
| git config --list | 設定オプションを表示 | 
| git config --global alias.bv 'branch -v' | エイリアスを設定 | 
| git config --global --unset alias.bv | エイリアスの解除 | 
| git help | ヘルプの表示 | 
| git status | ステージの現状 | 
| git status -s | ステージの現状(簡略版) | 
| git log | 過去の変更履歴を閲覧。HEADポインタの表示 | 
| git log -p -2 | 変更履歴の詳細を2件表示 | 
| git log --stat | 変更履歴の分量を統計的に表示 | 
| git last | 'log -1 HEAD'エイリアス。直近のログ | 
| git add | 変更をステージ(コンフリクト修正時のマークとしても使える) | 
| git reset HEAD <file> | fileをステージから外す | 
| git checkout -- <file> | 変更の巻き戻し | 
| git rm | ファイルの追跡を中止(次回コミット時に反映される) | 
| git mv | git にファイル名の変更を知らせる | 
| git commit -m "Comment" | 変更のコミット | 
| git commit -a -m "Comment" | 一気にステージングかつコミット | 
| git commit --amend | 直近のコミットやコメントを修正 | 
| git branch | ブランチの現状 | 
| git branch -v | 各ブランチの直近のコミットコメントを表示 | 
| git branch --no-merged | マージされた事のないブランチ | 
| git branch hoge | ブランチの作成 | 
| git checkout hoge | hogeブランチへ切り替え | 
| git checkout -b fuga | fugaブランチを作成しつつ切り替え | 
| git log --oneline --decorate --graph --all | マージの歴史 | 
| git merge hoge | ブランチをマージ(通常はmasterでマージする) | 
| git branch -d hoge | ブランチの削除(通常はマージ後に不要になる為) | 
| git diff | 直近ステージ済みとの差分を確認 | 
| git diff --staged | 直近コミットとの差分を確認 | 
リモート操作
| コマンド | 説明 | 
| git clone <URL> | 指定のプロジェクトをクローン | 
| git remote -v | 登録されているリモートプロジェクトを表示 | 
| git remote add pb https://github.com/paulboone/ticgit | 「pb」でアクセスできるようにする | 
| git remote rename pb paul | 「pb」を「paul」にリネーム | 
| git fetch pb | 「pb」からプロジェクトの変更情報を取得 | 
| git push [remote-name] [branch-name] | 修正内容をリモートにプッシュ | 
参考:https://git-scm.com/book/ja/v2