Subject: Re: [RFC] git-mergetool: show original branch names when possible

From: Junio C Hamano <[email-masked]>
Date: Mon, 20 Aug 2007 01:28:31 -0700

Jeff King <[email-masked]> writes:

> 1. Is it OK to place the extra branch name information in MERGE_HEAD
> after the SHA1?

I do not think of anything that would barf offhand (we already
do that in FETCH_HEAD), but this would definitely be carefully
audited.

> 2. It looks like doing an anonymous 'git-pull' leaves GITHEAD_* as the
> commit sha1, which means you will end up with that sha1 rather than
> 'REMOTE', which is less nice than the current behavior.

Much less nice indeed.

> It would be _really_ convenient in this case if we had a "git is in the
> middle of something" file, which has been discussed before.
> ...
> there are some operations that persist across multiple command
> invocations, and it would be nice rather than every command knowing
> about every other command's implementation patterns ("Oh, you have a
> .dotest file? You must be in the middle of...") to have a single place
> with something like:
>
>   $ cat .git/STATE
>   operation: merge
>   remote: git://git.kernel.org/pub/scm/git/git.git
>   branch: master
>   branch: octopus

It would be very nice, and I would encourage any wannabe
Porcelain writers to go wild on this.  One worry I have is if we
would need to support nested states.  "I was in the middle of
'foo' and then had to go sideways to do 'bar' which I am now in
the middle of" kind of thing.