「元に戻す」履歴を表示する
開発者として、コードベースに対して行った変更を元に戻す必要がある場合があります。Git には、git reset
や git revert
コマンドなど、変更を元に戻すためのいくつかの方法があります。ただし、特に git rebase
のような高度なコマンドを使用した場合、行ったすべての操作を追跡するのは難しい場合があります。ここで git reflog
コマンドが役に立ちます。
git reflog
コマンドは、Git の参照ログを表示します。これは、リポジトリで行ったすべての操作の記録です。これには、コミットだけでなく、ブランチのマージ、再ベース、リセットなどの他の操作も含まれます。参照ログを表示することで、コミット履歴に表示されない場合でも、リポジトリに対して行ったすべての変更の完全な履歴を確認できます。
Git の「元に戻す」履歴を表示するには、git reflog
コマンドを使用できます。リポジトリにいくつかの変更を加え、それらを元に戻したいとしましょう。
- コマンドラインを使用してリポジトリに移動します。
cd git-playground
- 今、間違いを犯したことに気づき、最後のコミットを元に戻したいとします。これを行うには、
git reset
コマンドを使用できます。
git reset HEAD~1
- このコマンドを実行した後、また別の間違いを犯していることに気づき、リセットを元に戻したい場合があります。ここで
git reflog
コマンドが役に立ちます。これを使用して参照ログを表示し、前のコミットのコミットハッシュを見つけることができます。
git reflog
これにより、リポジトリで行ったすべての操作のリストが表示され、リセットも含まれます。
cf80005 (HEAD -> master) HEAD@{0}: reset: moving to HEAD~1
d22f46b (origin/master, origin/feature-branch, origin/HEAD) HEAD@{1}: clone: from https://github.com/labex-labs/git-playground.git
- この出力から、前のコミットハッシュが
d22f46b
であることがわかります。このハッシュを使用して、リポジトリを前のコミットに戻すことができます。
git reset d22f46b
- 履歴のコミットレコードを表示して結果を確認します。
git log