Gitのコミットなど基本操作ができるようになったと思うので、一歩踏み込んでGitの理解を深めたいと思います。

今回は、「前のコミットに戻る・コミットを取り消す」の操作をやってみます。

1. 前のコミットに戻る

Xつ前を指定する方法(例:HEAD~1は、1つ前)

HEAD~X

過去のコミットを参照する

1つ前のコミットを参照する

git checkout HEAD~1
# または
git switch HEAD~1

上記の処理を元に戻す

上記の処理で、1つ前のコミットを参照しているので、最新のコミットに戻る

git checkout main
# または
git switch main

2. コミットを取り消す

コミットだけ取り消す(ステージングは維持)

1つ前のコミットを取り消してステージングは維持する

git reset --soft HEAD~1

ステージングもコミットも取り消す

1つ前のコミットとステージングを取り消す

git reset --hard HEAD~1

※コミット後の作業内容(ローカルの変更)も取り消されるので注意


次回はrebaseの操作をやってみます。