Re: change of git-diff-tree and symlinks
From: Jochen Roemling <hidden>
Date: 2016-06-15 22:41:58
Hello Kay, I'm planning to use cogito/git for tracking development of my (PHP based) website. Although this is the first time in my life I'm using something that smells like a SCM, it seems to work great. The only thing lacking is a working gitweb installation. I downloaded the gitweb.cgi script from kernel.org/pub/software/scm/gitweb, but it dates already May 23rd. In your mail below from May 25 you state that there have been quite some changes to git-diff-tree: Kay Sievers wrote:
Hi, I'm catching up with gitweb.cgi to parse the changed output. Works fine so far and is really much easier to parse. Here is something that does not work anymore. See the difference between: http://www.kernel.org/git/?p=linux/hotplug/udev.git;a=commit;h=49cedafaf893bfe348eb7598227f1a11ae24bfd6 http://ehlo.org/~kay/gitweb.cgi?p=linux/hotplug/udev.git;a=commit;h=49cedafaf893bfe348eb7598227f1a11ae24bfd6 On my box is the lates git with the adapted gitweb.cgi. Here is the raw output of the old git-diff-tree: kay@dhcp-188:~/src/udev> /home/kay/src/cogito/git-diff-tree -r 49cedafaf893bfe348eb7598227f1a11ae24bfd6 17f2b1a7e0d10334af7f9622848788add125dea8 *120000->100644 blob 2d78258b1a0fe49afabc8c16a352117df5dc338a->2d78258b1a0fe49afabc8c16a352117df5dc338a test/sys/block/cciss!c0d0/device *120000->100644 blob 2d78258b1a0fe49afabc8c16a352117df5dc338a->2d78258b1a0fe49afabc8c16a352117df5dc338a test/sys/block/rd!c0d0/device *120000->100644 blob 2d78258b1a0fe49afabc8c16a352117df5dc338a->2d78258b1a0fe49afabc8c16a352117df5dc338a test/sys/block/sda/device *120000->100644 blob 1c776568bdc9dc750addd0885dded6b008a44460->1c776568bdc9dc750addd0885dded6b008a44460 test/sys/bus/pci/devices/0000:00:09.0 *120000->100644 blob e000c77614a23ad57fed284bd007ed7c1cb7872e->e000c77614a23ad57fed284bd007ed7c1cb7872e test/sys/bus/pci/devices/0000:00:1e.0 ... The new one shows simply nothing. Shouldn't it print the mode changes like the old one?
and that might be the reason why I'm getting "nothing" when I'm clicking
on a "commitdiff" link.
After investigating further, I found out that the object type ("blob" in
the example above) is no longer printed by git-diff-tree.
Also there is a new parameter '-p' that allows the output of a patch
directly instead of creating it with the help of temporary files as you
do it in gitweb.
Unfortunately my perl knowledge is really poor and I didn't get it to
work. After I changed the call to git-diff-tree to use the '-p' switch,
I'm getting a "403 Forbidden - Reading diff-tree failed" message, but
the same command on the command line works perfectly well. I don't know
what is wrong there.
Could you please post a downloadable current release of gitweb to
kernel.org that works with the current git? If not, please tell me what
git release is installed at kernel.org so that I can use that branch to
get it to work with gitweb.
And as a last side note it would be helpfull if you could include a
release number in the gitweb footer as you did in the very beginning so
that we know if something changed and there is new stuff to explore...
... keep up the great work!
Jochen