Re: [RFC] Merge strategy 'applyreject'

From: Shawn Pearce <spearce@spearce.org>
Date: 2006-09-14 07:38:20
Jakub Narebski <jnareb@gmail.com> wrote:
> > ---
> >  .gitignore               |    1 +
> >  Makefile                 |    1 +
> >  git-merge-applyreject.sh |   26 ++++++++++++++++++++++++++
> >  git-merge.sh             |    2 +-
> >  4 files changed, 29 insertions(+), 1 deletions(-)
> 
> But where documentation (Documentation/merge-strategies.txt)? 

If its interesting I'll document it.  I just threw it together and
tossed it out there to see what others thought of the general idea.
 
> > +#!/bin/sh
> > +#
> > +# Simple merge strategy which produces reject files on failed merges.
> > +# Only handles two heads and one merge base, thus the command line
> > +# parameters must be:  base -- head1 head2
> 
> We can always get the base using git-merge-base, so the arguments could
> be either "base -- head1 head2", or just "head1 head2".

Actually the merge driver (git-merge.sh) feeds us the arguments like
that.
 
> Does "git pull -s applyreject . head2" works (when on head1) with
> this patch? Does the unified driver git-merge works correctly?

Yes.  That's how I tested it.

> > +git-diff --binary -M $base $incoming \
> > +     | git-apply --index --reject --verbose
> 
> --index or --cached?

I believe that --index is correct.  I want to patch the file in
the working directory, not the one that's currently in the index.
I also want to update the index if the patch applied cleanly.

-- 
Shawn.
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Sep 14 07:38:23 2006

This archive was generated by hypermail 2.1.8 : 2006-09-14 07:40:41 EST