Git コマンド 備忘録
自分で覚えておきたいGitコマンドを溜めておきます。
※随時更新予定
リモートリポジトリ
ブランチを指定してクローンする
git clone -b {ブランチ名} {リポジトリURL}
コミットのログの確認
変更したファイルを確認
git log --name-status
ログを1行に省略して表示
git log --oneline
ファイルの変更箇所を具体的に確認
git log -p
どのファイルが何ヶ所変わったか確認
git log --stat
ファイルの差分を確認
ステージングする前に差分確認
git diff
ステージングする前に特定のファイルの差分確認
git diff -- {ファイルのパス}
ステージングした後に差分確認
git diff --cached
リモートブランチとの差分を確認
git diff remotes/origin/{ブランチ名}
特定のファイルの差分を確認
git diff remotes/origin/{ブランチ名} -- {ファイルのパス}
ファイルAとファイルBの差分を確認
git diff -- {ファイルAのパス} {ファイルBのパス}
インデックスの管理
カレントディレクトリの追跡対象外ファイルを削除
git clean -f
追跡対象外ディレクトリも削除
git clean -df
コミットの管理
git add と git commit を一緒に行う
git commit -am "コミットコメント"
コミット内容を確認する
git show {コミットID or 名前}
コミットを上書きする
git commit --amend
直前のコミットを取り消す(個人開発向き)
git reset --hard HEAD^
※--hard
はコミット取り消した上でワークディレクトリの内容も書き換えたい場合に使用。
※--soft
はワークディレクトリの内容はそのままでコミットだけを取り消したい場合に使用。
※HEAD^
直前のコミットを意味する。
※HEAD~{n}
n個前のコミットを意味する
※「HEAD
」のエイリアスとして「@
」も使える(gitのv1.8.5から)
※コミットIDを指定しての取り消しも可能
直前のgit reset
を取り消す
git reset ORIG_HEAD
※「ORIG_HEAD」に前回取り消されたHEADの情報が1個だけ入っています。
直前のコミットを取り消すコミットを作成(複数人開発向き)
git revert HEAD^
最新をふくめ、過去4つ分のコミットを打ち消す
git revert HEAD~3
新しいコミットを作らずにコミットをインデックスに戻す
git revert HEAD^ --no-commit
別ブランチのコミットを取り込む
git cherry-pick {取り込むコミットID}
直前のコミットにタグ(別名)をつける
git tag {名前}
特定のコミットにタグ(別名)をつける
git tag {名前} {コミットID}
タグ(別名)を削除
git tag -d {名前}
変更ファイルの退避
ファイルを一時退避させる
git stash
ファイルの変更をメッセージをつけて一時退避させる
git stash save "メッセージ"
一時退避したファイルを戻す(stash@{0}の場合)
git stash apply stash@{0}
一時退避したファイルを戻して削除(stash@{0}の場合)
git stash pop stash@{0}
一時退避のファイル一覧を確認
git stash list
一時退避ファイルを削除(stash@{0}の場合)
git stash drop stash@{0}
変更されたファイル名だけを表示する
git stash show stash@{N}
変更されたファイルの内容まで表示する
git stash show -p stash@{N}
gitコマンドのエイリアス作成
gitコマンドのエイリアス作成
git config --global alias.{新しい名前} {コマンド}
gitコマンドのエイリアス一覧
git config -l