Re: Odd results writing a Git pre-receive hook to syntax check PHP files.
- From
- Chris Patti <cpatti@gmail.com>
- Date
- Aug 30, 2010, 17:37 UTC
- Message-ID
- <AANLkTi=VPf9CWNJcce6d20HQChi0mHgTG1F=jakzNT-O@mail.gmail.com>
- In-Reply-To
- <20100830163302.GA13336@burratino>
On Mon, Aug 30, 2010 at 12:33 PM, Jonathan Nieder <jrnieder@gmail.com> wrote:
Show 15 quoted lines
> Chris Patti wrote:
>
>> What if this is the
>> first time a new ref is being pushed? Then, old-ref is 000000 and git
>> diff --raw throws up a hairball :)
>
> Can't you check for 0{40} and use $(git hash-object -t tree </dev/null)
> in its place?
>
> In general, the "LOW-LEVEL COMMANDS (PLUMBING)" listed on the git man
> page are meant to be useful for scripts. They have simple input and
> output formats, they don't try to introduce weird exceptions for user
> convenience, the git developers are more conservative about changing
> them, and so on.
>Maybe I'm not understanding your intent here, but, this is a pre-receive hook, where you get handed two refs, the old (pre-push) ref, and the new (after push) ref.
git hash-object computes a hash from the file's contents. That's my whole point, I don't *have* the file to compute! All I have is those two refs.
Thanks, -Chris
-- Christopher Patti - Geek At Large | GTalk: cpatti@gmail.com | AIM: chrisfeohpatti | P: (260) 54PATTI "Technology challenges art, art inspires technology." - John Lasseter, Pixar