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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chris Patti <cpatti@xxxxxxxxx> 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?

>                 $regex="/\:\w+ \w+ \w+ (\w+) \w (.+)/";
>         }
>         else {
>                 $diffcmd="git diff --raw $old_sha1 $new_sha1";

And you are better off using "diff-tree -r" here instead of "diff --raw"
here as well, to keep the input to your parser for both cases uniform.
The parser would be easier that way, no?

>                 $regex="/\:\d+ \d+ \w+... (\w+)... \w\t(.+)/";
>         }
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]