Subject: Re: [BUG] "git pull" will regress between 'master' and 'pu'

From: Jeff King <[email-masked]>
Date: Sun, 19 Apr 2015 14:19:00 -0400

On Sun, Apr 19, 2015 at 05:38:26PM +0000, brian m. carlson wrote:

> >  	eval="git-rebase $diffstat $strategy_args $merge_args $rebase_args $verbosity"
> > @@ -334,7 +333,7 @@ true)
> >  	eval="git-merge $diffstat $no_commit $verify_signatures $edit $squash $no_ff $ff_only"
> >  	eval="$eval $log_arg $strategy_args $merge_args $verbosity $progress"
> >  	eval="$eval $gpg_sign_args"
> > -	eval="$eval -m \"\$merge_name\" $merge_head"
> > +	eval="$eval FETCH_HEAD"
> >  	;;
> >  esac
> >  eval "exec $eval"
> > 
> > as we seem to special-case the name FETCH_HEAD. It assumes that
> > git-merge's parsing of FETCH_HEAD is the same as what we do in git-pull,
> > but that seems safe. Unfortunately we still have to compute $merge_head
> > ourselves here for the "git pull --rebase" case.
> 
> I agree that this is a better choice.  My concern with your other
> suggestion is that it looks like it wouldn't honor the --no-edit flag or
> GIT_MERGE_AUTOEDIT=no.  That might break some use cases, such as
> non-interactive applications.

Yeah, you're right. I think you could work around it by munging the
$edit variable as appropriate. But the whole thing is still gross. We
should be able to convince "git merge" to do the fmt-merge-msg bit for
us, and if not, then I think it needs to be extended.

-Peff