Gitコマンド逆引き集

[]はオプション、()は選択肢

gitのバージョンを確認するには?

  git –version

gitの設定を追加、変更するには?

 git config [–global] 設定項目名 設定値

gitの設定値を確認するには?

 git config 設定項目名  git config –list

gitの設定値を一覧表示するには?

 git config –list

ローカルリポジトリを作成するには?

 git init  *ローカルリポジトリを作成したいディレクトリへ移動後に実行する。

ローカルリポジトリの状態を確認するには?

 git status

ファイルをステージングエリアへ登録するには?

 git add (ファイル / ディレクトリパス)

ファイルをまとめてステージングエリアへ登録するには?

 git add -A  *ワークツリーにある新規作成ファイルや変更ファイルがまとめて登録される。

ワークツリーとステージングエリアの差分を表示するには?

 git diff

ステージングエリアとGitディレクトリの差分を表示するには?

 git diff –cached

ファイルをコミットするには?

 git commit

コミットメッセージを指定してコミットするには?

 git commit -m "コミットメッセージ"

ステージングエリアへの登録とコミットを同時に実行するには?

 git commit -a  *新規作成ファイル(Git管理外ファイル)は対象外

直前のコミットメッセージを変更するには?

 git commit –amend -m "コミットメッセージ"  *コミットハッシュが変わるので、プッシュ不可となる。

直前のコミットをワークツリーへ反映し、ワークツリーの変更を取り消すには?

 git checkout — (ファイル / ディレクトリパス)

使用するブランチを切り替えるには?

 git checkout ブランチ名

名前を指定して新しいブランチを作成するには?

 git checkout -b 新しいブランチ名 (チェックアウト元のブランチ名)  *チェックアウト元のブランチを指定しない場合は、作成元のブランチは現在使用中のブランチになる。

ファイルの状態をステージングエリアからワークツリーへ戻すには?

 git reset HEAD ファイルパス  *HEADは最後にコミットした状態を示す。

最後にコミットした状態を示す識別子は?

 HEAD

ローカルの直前のコミットを取り消すには?

 git reset --soft HEAD^ : HEADの位置のみ
 git reset --mixed HEAD^ : HEADの位置、インデックス
 git reset --hard HEAD^ : HEADの位置、インデックス、ワーキングツリーの全て

ワークツリーやステージングエリアからファイルやディレクトリを削除するには?

 git rm ファイルパス  git rm -r ディレクトリパス  *削除状態がステージングエリアに登録される。(削除状態をリポジトリに反映するにはコミットが必要)

ファイルやディレクトリをGitの管理下から外すには?

 git rm –cached ファイルパス  git rm –cached -r ディレクトリパス  *削除状態がステージングエリアに登録される。(削除状態をリポジトリに反映するにはコミットが必要)  *ファイル自体はワークツリーに残る。

コミット履歴を表示するには?

 git log [-p]  *コミットメッセージが表示される。  *-pオプションを付けると、git diffと同様の差分を追加表示する。

リモートリポジトリをカレントディレクトリにコピー作成するには

 git clone (リモートリポジトリのURL / ディレクトリパス)  *ディレクトリパスを指定すると、当該ディレクトリが作成され、そこにリポジトリがコピーされる。

リモートリポジトリの設定を確認するには?

 git remote -v

慣習的に使われているクローン元のリモートリポジトリ識別子は?

 origin

リモートリポジトリを追加指定するには?

 git remote add リモートリポジトリ名 リモートリポジトリURL  *リモートリポジトリ名の重複使用は不可。

リモートリポジトリ設定を削除するには?

 git remote remove リモートリポジトリ名  *リモートリポジトリ名が削除されるのみで、リモートリポジトリ自体は残る。

リモートリポジトリ名を変更するには?

 git remote rename 変更前リモートリポジトリ名 変更後リモートリポジトリ名

ブランチを一覧表示するには?

 git branch  *現在使用中のブランチにはアスタリスクが「*」が付く。

現在使用中のブランチを確認するには?

 git branch  *現在使用中のブランチにはアスタリスクが「*」が付く。

ブランチを作成するには?

 git branch 新しいブランチ名

ブランチ名を変更するには?

 git branch -m 変更前ブランチ名 変更後ブランチ名

マージ済みのブランチを削除するには?

 git branch –delete ブランチ名  git branch -d ブランチ名  *マージ済みでないブランチ、現在使用中ブランチは削除不可。  *現在使用中ブランチを削除する場合は、git checkoutで別ブランチに変更しておく。

マージ状況に関わらずブランチを削除するには?

 git branch -D ブランチ名  *現在使用中ブランチを削除する場合は、git checkoutで別ブランチに変更しておく。

ローカルリポジトリのブランチをリモートリポジトリに反映するには?

 git push リモートリポジトリ名 ローカルリポジトリのブランチ名  *リモートリポジトリに同名ブランチがあれば更新され、無ければ新規作成される。

ローカルリポジトリのブランチをリモートリポジトリの指定ブランチに反映するには?

 git push リモートリポジトリ名 ローカルリポジトリのブランチ名:リモートリポジトリのブランチ名  *リモートリポジトリに同名ブランチがあれば更新され、無ければ新規作成される。

リモートリポジトリのブランチを削除するには?

 git push –delete リモートリポジトリ名 ブランチ名  git push リモートリポジトリ名 :ブランチ名

リモートリポジトリのブランチを現在使用中のローカルリポジトリのブランチに反映するには?

 git pull リモートリポジトリ名 リモートリポジトリのブランチ名  *ワークツリーにも反映される。

リモートリポジトリのブランチを指定したローカルリポジトリのブランチに反映するには?

 git pull リモートリポジトリ名 リモートリポジトリのブランチ名:ローカルリポジトリのブランチ名  *ローカルリポジトリに同名ブランチがあれば更新され、無ければ新規作成される。

リモートリポジトリの内容を、ワークツリーを変更せずにローカルリポジトリに反映するには?

 git fetch リモートリポジトリ名

指定したブランチを現在使用中のブランチに統合するには?

 git merge ブランチ名

コンフリクトにより自動マージできなかった場合にマージを中止してマージ前の状態へ戻すには?

 git merge –abort