どのように動作するかはよくわかりませんgit revert
。たとえば、ヘッドの 6 つ前のコミットに戻し、その間の中間コミットのすべての変更を元に戻したいとします。
言うシャハッシュは です56e05fced214c44a37759efa2dfc25a65d8ae98d
。では、次のようにできないのはなぜでしょうか:
git revert 56e05fced214c44a37759efa2dfc25a65d8ae98d
ベストアンサー1
別のコミットの正確な状態で現在の 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"