git reset など取り消しコマンドいろいろ
カテゴリ:IT関連
Evernote 検索するより Google で検索した方が早い気がするので上げとく。
・ワークツリーの修正をなかったことに
・直前のコミットを取り消す(追加実装のときとか)
・リセットを取り消す(git reset のリセット)
・直前のコミットを編集(追加実装とかコメントだけ修正とか)
・直前の add を取り消す(あんまりやらない)
・特定のコミットまで戻す
・特定のコミットを修正する(あとからコメント書き換えたいとか)
・マージ、プルを取り消す(Undo a merge or pull)
※pull, merge は都度オリジナルの HEAD を残す → ORIG_HEAD
・特定のコミットを消す(取り消すコミットを行う)
※コミットを取り消したコミットが残る
・コミット済みのファイルをリポジトリから消す
・push を取り消す(共用ブランチでの取消は良くない)
・今の変更を後で戻せるように脇に置いておいてなかったことにする
※-u で新規追加したファイルも一緒に
・ワークツリーの修正をなかったことに
$ git checkout .
・直前のコミットを取り消す(追加実装のときとか)
$ git reset --soft HEAD^
・リセットを取り消す(git reset のリセット)
git reflog // で作業ログを確認する
git reset --hard HEAD@{1} // たいてい1つ前
・直前のコミットを編集(追加実装とかコメントだけ修正とか)
git commit --amend -m "新しいコメント"
・直前の add を取り消す(あんまりやらない)
$ git reset HEAD
・特定のコミットまで戻す
$ git reset 特定のコミットを指定
・特定のコミットを修正する(あとからコメント書き換えたいとか)
git rebase -i HEAD~? // ?=戻したい数、2とか3とか
// pick を edit にして保存
// ファイルを修正する
git add .
git commit --amend -m 'コメント'
git rebase --continue
・マージ、プルを取り消す(Undo a merge or pull)
※pull, merge は都度オリジナルの HEAD を残す → ORIG_HEAD
$ git reset --hard ORIG_HEAD
・特定のコミットを消す(取り消すコミットを行う)
※コミットを取り消したコミットが残る
$ git revert 特定のコミットを指定
・コミット済みのファイルをリポジトリから消す
$ git rm --cached hoge.txt
・push を取り消す(共用ブランチでの取消は良くない)
$ git push -f origin HEAD^:master
・今の変更を後で戻せるように脇に置いておいてなかったことにする
※-u で新規追加したファイルも一緒に
$ git stash save -u '名前'