2

マスターブランチに対して行った最後のコミットは、すべてを元に戻したい場所です。ブランチを作成してコミットし、マスターブランチにマージしました。ただし、そのブランチをマージすると、すべてがうまくいきません。

そのブランチを完全に削除し、すべてを最後のマスターコミットに戻したいと思います。それ、どうやったら出来るの?

PS:私は試しgit branch -D [branch-name]ました(マスターブランチにマージしない場合はうまくいきます)が、間違ったファイルとdirsがまだマスターブランチにあります

4

2 に答える 2

3

マスターブランチをチェックアウトします(git checkout master)。次に、ログ(git log)を表示し、戻りたいコミットのSHAをコピーします。

次に、次のコマンドでそのコミットにリセットします。

git reset --hard whatever_your_sha_is

SHAの例はf75b7ca5beb502e7f99434ea47e631bdd18fef13です。行った変更をステージングされた変更として保持する場合は--softスイッチを使用し、ステージングされていない変更として保持する場合は--mixedスイッチを使用することもできます。

そして、必要に応じてブランチを削除できます。

PS git resetコマンドは非常に便利です。ここにブログ投稿を書いたか、有名なgitWebサイトのいずれかをチェックアウトして使用方法のヒントを確認してください。

于 2012-12-25T00:36:46.837 に答える
1

適用する必要があります:

git branch -D [branch-name]
git checkout master

新しいブランチを作成し、チェックアウト後にコミットしました。したがって、マスターには変更がなく、実行したことをコミットします。
マスターに対していくつかのコミットを行い、ロールバックしたい場合は、作成したブランチを削除してマスターブランチをチェックアウトするだけです。できるよ。

git reflog

行きたい場所にコミットを選択します。例:HEAD @ {25}、次に適用します

git checkout master
git reset --hard HEAD@{25}
于 2012-12-25T00:32:32.143 に答える