| add | * | ローカルへのファイルの追加 |  | 
| . | 全てのファイル・ディレクトリを追加 |  | 
| *.cpp | 全てのcppファイルを追加 |  | 
| -i | 対話形式でファイルを追加 |  | 
| -n | 追加されるファイルを調査 |  | 
| -p <file> | fileファイルをブロック単位で追加する |  | 
| -u | 削除or変更された全ファイルを削除or更新 |  | 
| branch |  | 作業ブランチを確認する |  | 
| -r | リモートブランチを確認する |  | 
| -a | すべてのブランチを確認する |  | 
| [branch_name] | 作業ブランチからbranch_nameというブランチを作成する |  | 
| -d [branch_name] | branch_nameというブランチを削除する |  | 
| -D [branch_name] | branch_nameというブランチを強制削除する |  | 
| clone | [repository path] | リモートからローカルへのコピー |  | 
| checkout | . | ローカルからワーキングへのコピー.ワーキングの変更を戻す |  | 
| [file_name] | file_nameファイルをローカルからワーキングにコピー.ワーキングの変更を戻す |  | 
| [branch_name] | 作業ブランチをbranch_nameというブランチに変更する |  | 
| [branch_name] [file_name] | branch_nameからワーキングにfile_nameをstaging状態でコピーする |  | 
| -b [branch_name] | 作業ブランチからbranch_nameというブランチを作成し、作業ブランチに変更する |  | 
| -b [branch_name] [origin/branch_name] | リモートリポジトリのorigin/branch_nameからローカルにbranch_nameというブランチを作成する |  | 
| -b [branch_name] [base_name] | base_nameブランチを親にbranch_nameというブランチを作成する |  | 
| cherry-pick | [commit ID] | 他ブランチの指定コミットを作業ブランチにマージする |  | 
| -e [commit ID] | 他ブランチの指定コミットをコミットメッセージを変更して作業ブランチにマージする |  | 
| -n [commit ID] | 他ブランチの指定コミットをマージせずに作業ディレクトリに取り込む |  | 
| [commit ID(a)]..[commit ID(b)] | 他ブランチのa-bで指定の複数コミットを作業ブランチにマージする |  | 
| commit | -m "commit message" | ローカルへのコミット |  | 
| -a | 変更のあったファイルを全てコミット |  | 
| --amend | 直前のコミットを取り消しし上書き | !  | 
| --amend --date | 直前のコミットを取り消しし日付(AuthorDate)を上書き | !  | 
| -v | 変更点を表示してコミット |  | 
| config | --global user.email "you@example.com" | ユーザのメール設定 |  | 
| user.email | ユーザのメール設定の確認 |  | 
| --global user.name "Your Name" | ユーザ名の設定 |  | 
| user.name | ユーザ名の設定の確認 |  | 
| --global credential.helper cache | 認証情報を15秒間メモリーに保持する。15秒以内であれば認証情報入力不要 |  | 
| --global credential.helper store | 認証情報をディスクに保存する。次回からは認証情報入力不要 |  | 
| --global --unset user.password | 記憶した認証情報を削除する |  | 
| --list | ユーザ情報を一覧表示 |  | 
| diff | [branch_name1] [branch_name2] | branch_name1というブランチとbranch_name2というブランチを比較する |  | 
| --cached | インデックス追加済みの変更箇所を確認する |  | 
| fetch |  | リモートの最新状態を、ローカルにダウンロードする |  | 
| gc |  | ローカルリポジトリ内の不要なコミット情報を削除して最適化する |  | 
| hash-object | -w [ファイル名] | ハッシュオブジェクトを上書きする | !  | 
| init |  | リポジトリの初期化 |  | 
| log |  | コミットログを表示する |  | 
| --author="<user_name>" | <user_name>ユーザのコミットを指定して表示する |  | 
| --numstat | コミットログの変更行数を表示する |  | 
| --pretty=fuller | コミットログの詳細情報を全表示する | !  | 
| --since="<date>" | <date>の日付以降のコミットを指定して表示する |  | 
| merge | [branch_name] | 作業ブランチにbranch_nameブランチをマージする |  | 
| mv | [before name] [after name] | ファイル名の変更 |  | 
| pull | origin [branch_name] | リモートリポジトリのbranch_nameというブランチをローカルに反映する |  | 
| push | origin [branch_name] | リモートリポジトリにローカルのbranch_nameというブランチをプッシュする |  | 
| -f origin HEAD^:[branch_name] | ローカルのbranch_nameをコンフリクトを無視してリモートに強制反映 |  | 
| rebase | [branch_name] | 作業ブランチの派生元ブランチをbranch_nameに変更する |  | 
| -i HEAD~n | 直近n個のコミットを取り出し編集する | !  | 
| HEAD~n --committer-date-is-author-date | 直近n個のコミットのCommitDateをAutherDateに合うように修正する | !  | 
| --continue | 現在のコミットの修正は完了し、編集対象を次のコミットに移す |  | 
| --onto [new] [old] [work] | workブランチの派生元をoldブランチからnewブランチに変更する | !  | 
| remote | set-url origin <url> | 既存のリモートリポジトリ originのURLを<url>に変更する |  | 
| reset | --soft HEAD~2 | 最新のコミットから2件分をワークディレクトリの内容を保持し取り消す |  | 
| --hard HEAD~2 | 最新のコミットから2件分のワークディレクトリの内容とコミットを取り消す |  | 
| rm | [path] | 特定ファイルを削除 |  | 
| --cached | 直前にaddしたファイルを除外 |  | 
| satus |  | 変更状況を表示 | !  | 
| -s | 短縮表示で変更状況を表示 | !  | 
| stash | save | コミットしていない変更を退避する |  | 
| save "message" | 変更をメッセージ付きで退避する |  | 
| -u | 新規作成ファイルも含めて変更を退避する |  | 
| apply [stash name] | 指定したstash nameに作業ディレクトリを戻す |  | 
| list | 退避した変更の[stash name]の一覧を表示する |  | 
| show [stash name] | 退避の詳細を確認する |  | 
| drop [stash name] | 退避した作業内容を一覧から消す |  | 
| clear | 退避した作業をすべて消す |  | 
| pop [stash name] | 退避した作業を基に戻し記録を削除する |  |