Re: is it kosher for pre-commit to change what's staged?
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Nov 10, 2010, 20:06 UTC
- Message-ID
- <20101110200650.GA13439@burratino>
- In-Reply-To
- <7v1v6thrzc.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
> Joey Hess <joey@kitenet.net> writes:
Show 5 quoted lines
>> I've noticed that if I make a pre-commit hook change the files that are >> staged, those changes are not reflected in the commit message. For >> example, if a pre-commit hook git add's somefile, the commit message >> won't reflect that. I guess prepare-commit-msg is being run before >> pre-commit for some reason?
I'm guessing it is to allow cancelling a commit before a costly pre-commit hook runs.
Show 8 quoted lines
> My intention was that Documentation/githooks.txt would document things > that are allowed (e.g. "applypatch-msg" explicitly says "The hook is > allowed to edit the message"), and anything that is not specifically > allowed is not. > > "Is it kosher" is a difficult question to answer, as something may not be > allowed but there may not be an enforcement mechanism to deny it, iow, it > may happen to work by accident.
In this case, isn't it only a half accident? For example, I think v1.5.4-rc0~78^2~12 (builtin-commit: fix partial-commit support, 2007-11-18) taught git to support this a little better.
That said, I would be interested to hear the use case, since modifying staged content on the fly for a commit sounds a little crazy. :)