それを行うには多くの方法があります(rebase
またはを使用reset
)。
を使用したアプローチgit reset
:
git status
調べるために使用します。コミットされていない変更がある場合は、それらを隠し場所に保存します(git stash
または一時的なブランチにコミットします。git branch backup
して、現在のコミットでバックアップブランチを作成します。reflog
または現在のコミットのハッシュを書き留めることで同じ結果が得られます)、問題が発生した場合に現在のステータスを復元する最も簡単な方法です。git reset --soft HEAD~2
。HEAD
に、過去の2つのコミット(コミット時e8de117
)が移動します。インデックスと作業ツリーは、コミットを作成する直前のようになります6aa74e4
。最後の2つのコミットで変更されたすべてのファイルは、すでにインデックスに追加されています。HEAD
がオンe8de117
になっているため、次のコミットがその上に作成されますe8de117
(コミット6aa74e4
とを「置き換え」77c15d6
ます)。git commit
。新しいコミットメッセージを入力する必要があります。git diff backup
違いは報告されないはずです)、または気が変わった場合は、実行git reset --hard backup
して元の場所に戻ります(実際には、手順2の直後)。backup
、手順2(git branch -D backup
)で作成したブランチを削除します。この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加