了解。人類が一番よくやる事故「変更したけどやっぱ戻したい」だな。
状況別に、Gitのワーキングツリーの変更を取り消す方法をまとめてやる。
1) まだ git add してない変更を取り消す(ワーキングツリーだけ)
特定ファイルだけ戻す
git restore ファイル名
全部戻す
git restore .
2) git add してしまった変更も取り消す(ステージングも含む)
ステージングから外す(ワーキングツリーは残る)
git restore --staged ファイル名
ステージングもワーキングツリーも両方戻す(完全リセット)
git restore --staged .
git restore .
3) 変更内容を見てから戻したい(安全確認)
git diff
git diff --staged
4) 一番強い「全部なかったことにする」コマンド(危険)
未コミットの変更を全消し(tracked対象)
git reset --hard HEAD
5) 追跡されてないファイル(新規作成)も消したい
削除対象を確認(まずこれ)
git clean -nd
実際に削除
git clean -fd
必要なら、今の状態に合わせて「このコマンド一発でOK」を指示してやるから、git status の結果を貼れ。

コメント