Re: [PATCH v3] nmbug: Translate to Python

Subject: Re: [PATCH v3] nmbug: Translate to Python

Date: Sun, 24 Aug 2014 13:07:43 -0700

To: W. Trevor King

Cc: notmuch@notmuchmail.org

From: David Bremner


"W. Trevor King" <wking@tremily.us> writes:

> On Tue, Aug 05, 2014 at 10:24:10PM -0300, David Bremner wrote:
>> I have a local commit that deletes a couple tags; when I attempt to
>> merge I get complaints about local changes to files.
>> 
>> error: Your local changes to the following files would be overwritten by merge:
>> 	tags/1406859003-11561-2-git-send-email-amdragon@mit.edu/needs-review
>> 	tags/1406859003-11561-3-git-send-email-amdragon@mit.edu/needs-review
>> Please, commit your changes or stash them before you can merge.
>> …
>> Calling the perl version of nmbug successfully creates a little 
>> diamond merge
>
> The Perl version has:
>
>   git ( { GIT_WORK_TREE => $tempwork }, 'checkout', '-f', 'HEAD');
>   git ( { GIT_WORK_TREE => $tempwork }, 'merge', $commit);

>
> But the Python version only has:
>
>   _git(
>       args=['merge', reference],
>       additional_env={'GIT_WORK_TREE': workdir},
>       wait=True)
>
> I suppose we need the checkout to populate the working directory, but
> I'm not sure we want to force the checkout.  Do we expect to have
> unmerged entries in the index?

I can't remember now why the checkout was forced, so as long as you can
test it, I guess try the unforced version first. I guess the merge will
fail if there are unmerged entries in the index, but maybe we can find
out why that happens and prevent it.

d

Thread: