Re: [PATCH 4/4] git-rebase -i: New option to support rebase with merges

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Mon, 24 Mar 2008, Jörg Sommer wrote:

> Johannes Schindelin schrieb am Sun 23. Mar, 23:41 (+0100):
> > On Sun, 23 Mar 2008, Jörg Sommer wrote:
> > 
> > > @@ -150,7 +152,18 @@ pick_one () {
> > >  		sha1=$(git rev-parse --short $sha1)
> > >  		output warn Fast forward to $sha1
> > >  	else
> > > -		output git cherry-pick "$@"
> > > +		if test t = "$LINEAR_HISTORY" &&
> > > +			other_parents="$(parents_of_commit $sha1 | cut -s -d' ' -f2-)" &&
> > > +			test -n "$other_parents"
> > > +		then
> > > +			if test a"$1" = a-n
> > > +			then
> > > +				merge_opt=--no-commit
> > > +			fi
> > > +			redo_merge $sha1 $no_commit $other_parents
> > > +		else
> > > +			output git cherry-pick "$@"
> > > +		fi
> > 
> > Now, that is funny.  In case of --preserve-merges, I would have 
> > expected you to touch pick_one_preserving_merges(), not pick_one().
> > 
> > I would find it highly illogical to try to redo merges _without_ -p.
> 
> Me too, but I think it's not possible to do what I want with -p.

But that is not a reason to mess up the source code.  If you do a thing as 
--linear-history (or --first-parents, as I would prefer it), that should 
be in the code path of --preserve-merges (and actually _imply_ that 
option).

--linear-history makes no sense at all without --preserve-merges.

Ciao,
Dscho

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux