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