git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Odd results writing a Git pre-receive hook to syntax check PHP files.

From
CPChris Patti <cpatti@gmail.com>
Date
Sep 2, 2010, 14:34 UTC
Message-ID
<AANLkTiks+y8edtpkbu+t=22rct_KXv9aOHaG88-MWapK@mail.gmail.com>
In-Reply-To
<7vk4n68hpk.fsf@alter.siamese.dyndns.org>
On Tue, Aug 31, 2010 at 7:50 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 15 quoted lines
> Chris Patti <cpatti@gmail.com> writes:
>
>> function parseCommit($old_sha1,$new_sha1) {
>>         # if this is the first commit on a new branch, $old_sha1 will
>> be a bunch of zeroes, and so
>>         # git diff --raw will fail, since there's no old ref to
>> compare against.  So, we parse the
>>         # results of git diff-tree -root=$new_sha1 instead to get the
>> blob and filename we'll need.
>>         if (detectNewBranch($old_sha1,$new_sha1)) {
>>                 $diffcmd="git diff-tree --root $new_sha1";
>
> This somehow feels wrong.  If the tree of the new commit is flat without
> subdirectory, the above would do, but don't you need "diff-tree -r" here?
>

I tested with subdirectories, and subdirs with subdirs, and no failures, worked perfectly. So, not sure what feels wrong to you, but for now, it works :) I will seek to better understand the internals I'm mucking with here so I can figure out why you see the current implementation as being suspect.

-Chris
-- 
Christopher Patti - Geek At Large | GTalk: cpatti@gmail.com | AIM:
chrisfeohpatti | P: (260) 54PATTI
"Technology challenges art, art inspires technology." - John Lasseter, Pixar
Previous: Chris Patti
Message 20 of 20 in “Odd results writing a Git pre-receive hook to syntax check PHP files.”
  1. Chris PattiAug 27, 2010
  2. Michael J GruberAug 30, 2010
  3. Chris PattiAug 30, 2010
  4. Jonathan NiederAug 30, 2010
  5. Chris PattiAug 30, 2010
  6. Example git hooks (Re: Odd results writing a Git pre-receive hook to syntax check PHP files.)Jonathan Nieder, Aug 30, 2010
  7. Todd ZullingerAug 31, 2010
  8. Chris PattiAug 31, 2010
  9. Chris PattiAug 31, 2010
  10. Michael J GruberAug 30, 2010
  11. Chris PattiAug 30, 2010
  12. Chris PattiAug 30, 2010
  13. Sverre RabbelierAug 30, 2010
  14. Jonathan NiederAug 30, 2010
  15. Chris PattiAug 30, 2010
  16. Michael J GruberAug 30, 2010
  17. Chris PattiAug 31, 2010
  18. Junio C HamanoAug 31, 2010
  19. Chris PattiSep 1, 2010
  20. Chris PattiSep 2, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.