1. ホーム
  2. git

[解決済み] GitでSHAハッシュによるコミットの取り消し?重複

2022-03-15 16:19:11

質問

がはっきりしないのですが git revert は動作します。たとえば、先頭から6つ後ろのコミットに戻したいのですが、その間にある中間コミットの変更をすべて戻したいと思います。

例えば、その シャー ハッシュは 56e05fced214c44a37759efa2dfc25a65d8ae98d . では、なぜ、こんなことができないのか。

git revert 56e05fced214c44a37759efa2dfc25a65d8ae98d

解決方法は?

現在の HEAD の上に、別のコミット時の状態を正確に再現してコミットしたい場合、中間コミットをすべて取り消すには reset を使用して、コミットを行うためにインデックスの正しい状態を作成します。

# Reset the index and working tree to the desired tree
# Ensure you have no uncommitted changes that you want to keep
git reset --hard 56e05fced

# Move the branch pointer back to the previous HEAD
git reset --soft "HEAD@{1}"

git commit -m "Revert to 56e05fced"