Junio C Hamano <gitster@xxxxxxxxx> writes: [...] > I think the current preserve-merges considers everything between > <upstream> and <branch> as "commits to be rebased", and recreate > merges across these rebased tips of branches that are merged. > > There however were repeated wishes (or wishful misunderstandings ;-) > that there were a mode to rebuild the trunk, considering only the > commits on the first-parent chain as "commits to be rebased", > recreating the history by replaying the merge commits (whose first > parent might be rewritten during the rebase, but the tips of side > branches these merges bring into the history are kept intact). > > Surely there is no such mode right now, Isn't it what Johannes Sixt <j6t@xxxxxxxx> mentions here?: [QUOTE] If you want a version of --preserve-merges that does what *you* need, consider this commit: git://repo.or.cz/git/mingw/j6t.git rebase-p-first-parent Use it like this: git rebase -i -p --first-parent ... Beware, its implementation is incomplete: if the rebase is interrupted, then 'git rebase --continue' behaves as if --first-parent were not given. [/QUOTE]. ref: http://permalink.gmane.org/gmane.comp.version-control.git/263584 If so, then I'd say such mode almost exists. > but I am fairly sure that I wouldn't have any objection against a > patch to implement such a feature (perhaps "--first-parent > --preserve-merges"?), It'd be very welcome feature here, preferably along with a way to pass it to 'git pull --rebase', including a way to configure it to be the default. > and with or without such a feature in the system, I would be happier > if we made sure that the description we are discussing to update makes > it clear that the current behaviour is "everything between <upstream> > and <branch>", and cannot be misread as "do not touch side branches > instead of dropping merged commits". I'd also suggest to somehow warn in the manual that current modes of operation silently drop changes to merge commits that were made to non-conflicting paths (either during conflict resolution or otherwise.) -- Sergey. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html