説明
Gitで作業を進める中で、ローカルでの変更を破棄して過去の特定のコミットに戻したい場合があります。その際、git reset --hard コマンドを使用することで、ローカルの変更を完全に破棄し、特定のコミットにリセットすることが可能です。本記事では、その手順を説明します。
手順
1. コミット履歴を確認する
まず、どのコミットに戻すかを決めるために、git log で現在のブランチにあるすべてのコミット履歴を表示させます。
- コード
git log
- 想定される実行結果
% git log
commit <コミット番号> (HEAD -> main, origin/main, origin/HEAD)
Author: Your Name <Your Address>
Date: Wed Sep 11 11:59:40 2024 +0900
<コミットメッセージ>
%
2. ローカルの変更を破棄する
ローカルの変更をすべて破棄して、ワーキングツリーをまっさらな状態に戻します。
git reset --hard で、すべてのローカル変更を取り消します。
- コード
% git reset --hard
- 想定される実行結果
% git reset --hard
HEAD is now at <コミット番号やコミットメッセージ>
%
3. 特定のコミットに戻す
次に、特定のコミットに戻すためには、git reset --hard <コミット番号> コマンドを使用します。これにより、そのコミットの状態にリセットされます。
- コード
% git reset --hard <コミット番号> ## 特定のコミットに戻す
- 想定される実行結果
% git reset --hard <コミット番号>
HEAD is now at <コミット番号やコミットメッセージ>
%
以上が、ローカルの変更を破棄して特定のコミットにリセットする手順です。
git reset 系は、慎重に使ってください。