After finishing work on the topic branch, I merged the topic branch into a wizard, as shown below:
o---*---o---o topic / \ o---o---o---*---o---o---+ master
The end marked with "*" changed the same code, so merging leads to merging conflicts that were resolved during compilation with commit (marked with a "+" sign).
While I combined and resolved the conflicts, my colleague pushed new commits to the master (marked as "n"), which led to the following story:
o---*---o---o topic / \ o---o---o---*---o---o---+ master \ n---n origin/master
Now clicking on my local branch of the wizard, of course, leads to an error, since this is not a fast-forward, so I have two options:
Drop my job, reset master to origin / master and retry the merge. I would like to avoid this, as I would have to resolve conflicts again.
Restore the master to the beginning / master and press. This is where my problem arises: performing this permutation (even when using the -p switch) does not work smoothly, the merge transaction shows the same conflicts again, even if the new commits ('n') did not change anything that affected the topic. Therefore, I would have to resolve conflicts again during rebase and have the same result as with parameter 1.
What I would like to achieve is reloading the + merge without resolving conflicts again:
o---*---o---o-------- topic / \ o---o---o---*---o---o---n---n---+ master & origin/master
Edit:
The reer switch is on, but it doesn't help; do i need to do something more than set config.rerere to true to fix my problem?
Edit 2:
Combining merge-commit ('+') at the beginning / wizard will also work (as suggested in the comments and answer), but will lead to some ugly story that I would like to avoid having only one merge.
source share