1

私は開発者ブランチにいて、実行しようとしgit rebase remote/a_remote_branch ています:

First, rewinding head to replay your work on top of it...
Applying: change #1
Failed to merge in the changes.
Patch failed at 0001 change #1

私の質問は、なぜgit rebase「変更 #1」を適用しようとしているのかということです。

これはgit log、ローカル ブランチに 'change #1' が表示されるためです。リベース時に git が 'change #1' を再度適用しようとするのはなぜですか?

4

1 に答える 1

5

mergeとの違いはrebase、ブランチが親ブランチの新しいバージョンに基づいrebaseているように見せようとしていることです。そのため、すべてのブランチ コミットを削除し、最新の親コミットに早送りしてから、変更を再適用しようとします。したがって、リベース。あなたの作業のにすべての親の変更を取り込む新しいコミットを行う場合。次に、競合 (存在する場合) は、既存のブランチ作業ではなく、そのマージ コミットにあります。merge

于 2013-05-14T20:52:53.583 に答える