Gitで知っておくと便利なコマンド

2019-02-21

作業中に「あ,コミットメッセージ間違えた」とか「ブランチ切り替え忘れた」とかやらかしたときに使うコマンドを置いておきます.

編集したファイルの差分の確認

編集した箇所が何処かわからなくなった場合は,その差分を表示することができます.

terminal
$ git diff

作業途中のブランチの切り替え

作業中にブランチを切り替えようとしても,コミットしていない内容がある場合はエラーが出て切り替えることができません.作業内容を一時的に別の場所に保管して,切り替える必要があります.

terminal
# 作業内容を一時的に退避
$ git stash

# ブランチ切り替え
$ git checkout <切り替え先ブランチ名>

# 退避していた内容を反映
$ git stash pop

コミットの取り消し

terminal
$ git reset --soft ^HEAD

コミットメッセージの修正とリモートの更新

メッセージを間違ったままコミットしてしまった場合でも修正することができます.

terminal
# Terminal 上で書き換え
$ git commit --amend

このコマンドは直前のコミットを上書きする形で取り消すものです.コミットメッセージを変更する以外に,追加し忘れたファイルをコミットするときなどに使います.

ちなみに,この方法ではターミナル上のエディタでメッセージを変更することになります.Vim などのエディタには閲覧モードと入力モードがあり,ざっくりいうと a で閲覧 → 入力モード,Esc で入力 → 閲覧モードです.エディタを終了するためには,閲覧モードで :wq (上書き保存) を入力します.

push してリモートリポジトリも更新してしまっている場合は,それを上書きすることもできます.強制的に上書きするため,複数人で管理されている Git で実行すると命に関わるので実行しないほうがいいです.

terminal
# 強制プッシュ
$ git push -f リモートリポジトリ名 ブランチ名