はじめに
どうも、yukiです。
今回は最近使用したgit コマンドをまとめてみました。
git pushを取り消す
- 自分しか変更しないことがわかっているブランチだったので、
git reset
にて対応しました。 - 以下のコマンドで前のコミットの状態に戻る。
--soft
はローカルでの変更等を残す、--hard
はcommit,add,ソース含め全部戻す。
$ git reset --soft HEAD^
-f
で強制的にカレントブランチをpushすると、履歴を残さず修正できます。
$ git push -f origin HEAD
- gitに履歴を残して修正したい場合は、
git revert
を使います。複数人で作業しているブランチだと、どちらの方法もコンフリクトがこわいですね。
削除したリモートブランチがローカルに残ってる
git branch -a
で、削除したブランチがローカルにたくさん残っていることに気付きました。- feachするときに
-prune
をつけて解決。
$ git fetch --prune ( git fetch -p )
- 毎回オプションつけるのめんどくさいので、fetch時に自動でpruneしてくれるよう.gitconfigに設定しました。
[fetch] prune = true
参考
おわりに
ガチャガチャしているうちに、座学で得た知識の定着が始まってきました。HEAD、index、リモート/ローカルブランチとか。
git revert
の理解が浅いので、どっかで実験したいなあ。