Re: Git Rebase blows away GIT_AUTHOR_NAME
- From
Jeff King <peff@peff.net>
- Date
- Jan 14, 2011, 16:21 UTC
- Message-ID
- <20110114162144.GA867@sigill.intra.peff.net>
- In-Reply-To
- <AANLkTimZF+r2aNzrXsUuHVZR65N5wpOYLutFgGAGoci_@mail.gmail.com>
On Fri, Jan 14, 2011 at 05:13:59PM +0100, Erik Faye-Lund wrote:
Show 10 quoted lines
> > The three-letter minimum is just a sanity check. If your name really > > is even just three letters, I suspect you're just lying. I don't know > > of anybody named "A B". > > > Thanks for clarifying that it's not there for a technical reason. The > thing is, git-am seems to be the only place where such a sanity-check > is performed. Shouldn't git-commit rather perform such checks also (if > such a check should be done at all), perhaps with an override similar > to --allow-empty? And on top of all it doesn't barf, it just silently > replace the name with the e-mail...
I tend to agree with Linus on the stupidity issue, but I do worry about the subtlety of the results. It causes silent data corruption during a rebase (or when somebody is applying an emailed patch). On the other hand, I do understand why Linus made a sanity check in the first place; his use case is to deal with whatever crap people happen to mail him, whether they have used git or not.
So we should probably do one or both of:
1. Make an --allow-any-name option to mailinfo, and use it when we
invoke mailinfo internally for rebasing. That still doesn't solve
the emailed patch problem, but at least keeps purely internal
operations sane. 2. Bump the check up to git-commit time, which is the best place to
catch and tell somebody that their name is too short, because they
can actually fix it.Even if we dropped the check now, option (2) is still useful, because you have no idea which version of git the other end will use to apply your patch.
-Peff