git reset
git reset についてもまとめてみる - murankの日記
git reset とは?
HEAD の位置を変更するコマンド。 オプションによってインデックス、ワーキングツリーの内容も変更できる。
- --soft
- HEAD の位置のみを変更する。インデックス、ワーキングツリーには影響なし。
- --mixed(もしくはオプションなし)
- HEAD の位置とインデックスを変更する
- --hard
- HEADの位置、インデックス、ワーキングツリーをすべて変更する。
--soft
git reset HEAD^ --soft
- インデックス、作業ツリーに対する変更は両者とも残る
- HEADの位置がHEAD^に変わるだけ
--mixed(オプション無し)
git reset HEAD
- インデクッスをHEADの状態にする。インデックスになにかあったらその変更は消える
- git add の取り消しに使う
- 作業ツリーへの変更は残る!
--hard
git reset --hard HEAD
- HEAD、インデックス、ワーキングツリーすべてを HEAD に変更する。