Subject: Re: Rebase v. merge (Was: Re: linux-next: manual merge of the xfs tree with the vfs tree)

From: Al Viro <[email-masked]>
Date: Mon, 15 Feb 2010 23:57:16 +0000

On Tue, Feb 16, 2010 at 10:16:26AM +1100, Stephen Rothwell wrote:
> Hi Al,
> 
> On Mon, 15 Feb 2010 03:44:17 +0000 Al Viro <[email-masked]> wrote:
> >
> > Actually, I'd cheerfully rebased that sucker (to e.g. write_inode2); it has
> > grown a trivial conflict with mainline after one of gfs2 merges and it's
> > annoying to fix it up after each for-next rebase.
> > 
> > So I'd rather put a rebased variant and switched the for-next to using that,
> > if people who'd pulled it already are OK with that.
> 
> Just out of interest, is there some reason you didn't just merge Linus'
> tree (or the subset that caused the conflict) into the write-inode
> branch.  That would have meant that you still had a nonrebasing branch
> that others could use.  Now anyone who has merged your write_inode branch
> needs to rebuild their trees using you new write-rebase2 branch or risk
> causing conflicts in linux-next or Linus' tree when their tree's are
> merged.

Branch in question still doesn't exist; that was a question, not a description
of what I've already done.  I guess I can do what you describe, but...  Yuck.
Multiple merges from mainline can create one hell of a mess down the road.
I had to deal with results of exactly that when dwmw2 had dumped the audit
tree into my lap and it had been a huge mess that took quite a while to
untangle ;-/

The same goes for modifications hidden in merge commit, BTW.  I know that
Linus seems to be OK with that kind of thing, but... every time I run into
that is when some change is not to be found in git log -p ;-/

Oh, well...  I'll probably do that merge of mainline back into write_inode
and try hard to avoid anything similar in the next cycles.