From: Jonathan Nieder Date: Fri, 06 Dec 2013 23:25:56 GMT Subject: Re: [PATCH v2 0/3] rev-parse and "--" Message-ID: <20131206232556.GN29959@google.com> In-Reply-To: <20131206220520.GA30652@sigill.intra.peff.net> Jeff King wrote: > Patch 3 is the revised version of this patch which notices ambiguity. > However, I'm having second thoughts on it. I think it's the right thing > to do if you want to help people build something like "git log" > themselves. But it does mean that we are breaking somebody who does: > > echo foo >HEAD > commit=$(git rev-parse HEAD) > > I'm tempted to say that people who did that are stupid and wrong (and > ugly, too). They should probably be using "--verify" in this case. But > it has been that way for a long time, and there are two instances in our > test scripts that are broken by the patch. Wouldn't the same thing happen for $(git rev-parse HEAD^..HEAD) when there is a 'HEAD^..HEAD' file, too? --verify doesn't support that. I think it's a nice idea to provide this functionality for people who need it, which would mean protected by an option (--check-ambiguity or something). I don't think it's a good change to do it unconditionally. My two cents, Jonathan