threads / discuss / 19122

git svn errors out with git-cat-file "usage" message

Subject: git svn errors out with git-cat-file "usage" message

## tl;dr

17 messages between Apr 29, 2009 and Apr 30, 2009.

replies: 16people: 4as markdown or json

Martin Langhoff· Apr 29, 2009, 15:11 UTC · lore

There is very small public SVN repo that I'm trying to clone with SVN, and seems to trigger a big in git-svn.

Steps to repro, and error message:

$ git svn clone -T trunk --ignore-paths releases http://paintweb.googlecode.com/svn paintweb.git r3 = 30548c9192aefcde23337f70542ab59e193a1b9e (trunk) usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1> fatal: unable to run 'git-svn' $ git version git version 1.6.2.4.10.g2254d <== this is maint as of right now

The same problem exists with master as of right now (v1.6.3-rc3-12-gb79376c)

On a different box it succeeded -- this was a Fedora 9 box, with git from rpms. I did have to drop the '--ignore-paths' paramater though: $ git --version git version 1.6.0.6

any hints as to what could be wrong? The repository is small and pretty vanilla afaics...

cheers,
martin
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Avery Pennarun· Apr 29, 2009, 18:50 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

On Wed, Apr 29, 2009 at 11:11 AM, Martin Langhoff <martin.langhoff@gmail.com> wrote:

Show 11 quoted lines
> Steps to repro, and error message:
>
> $  git svn clone -T trunk --ignore-paths releases
> http://paintweb.googlecode.com/svn paintweb.git
> r3 = 30548c9192aefcde23337f70542ab59e193a1b9e (trunk)
> usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1>
> fatal: unable to run 'git-svn'
> $ git version
> git version 1.6.2.4.10.g2254d <== this is maint as of right now
>
> The same problem exists with master as of right now (v1.6.3-rc3-12-gb79376c)

I just tried this (commit 2254d) and was unable to reproduce; it worked fine for me (Debian etch).

  git svn clone -T trunk --ignore-paths releases
http://paintweb.googlecode.com/svn paintweb.git
  ...
  r6 = 8561205fe08e0bcefb592710f4e34db91f3099df (trunk)
  Checked out HEAD:
    http://paintweb.googlecode.com/svn/trunk r6
Maybe you can try 'git bisect' to narrow it down.
Have fun,
Avery
Michael J Gruber· Apr 29, 2009, 20:25 UTC · re: Avery Pennarun · lore

Re: git svn errors out with git-cat-file "usage" message

Avery Pennarun venit, vidit, dixit 29.04.2009 20:50:
Show 25 quoted lines
> On Wed, Apr 29, 2009 at 11:11 AM, Martin Langhoff
> <martin.langhoff@gmail.com> wrote:
>> Steps to repro, and error message:
>>
>> $  git svn clone -T trunk --ignore-paths releases
>> http://paintweb.googlecode.com/svn paintweb.git
>> r3 = 30548c9192aefcde23337f70542ab59e193a1b9e (trunk)
>> usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1>
>> fatal: unable to run 'git-svn'
>> $ git version
>> git version 1.6.2.4.10.g2254d <== this is maint as of right now
>>
>> The same problem exists with master as of right now (v1.6.3-rc3-12-gb79376c)
> 
> I just tried this (commit 2254d) and was unable to reproduce; it
> worked fine for me (Debian etch).
> 
>   git svn clone -T trunk --ignore-paths releases
> http://paintweb.googlecode.com/svn paintweb.git
>   ...
>   r6 = 8561205fe08e0bcefb592710f4e34db91f3099df (trunk)
>   Checked out HEAD:
>     http://paintweb.googlecode.com/svn/trunk r6
> 
> Maybe you can try 'git bisect' to narrow it down.

Works here as well, with git version 1.6.3.rc3 and svn, Version 1.5.4 (r33841) on Fedora 10.

Given the versions that fail for Martin and work for Avery and me I would think it's not a git issue but rather a matter of the svn version resp. the svn perl bindingds.

Michael
Martin Langhoff· Apr 29, 2009, 20:47 UTC · re: Michael J Gruber · lore

Re: git svn errors out with git-cat-file "usage" message

On Wed, Apr 29, 2009 at 10:25 PM, Michael J Gruber <git@drmicha.warpmail.net> wrote:

> Given the versions that fail for Martin and work for Avery and me I
> would think it's not a git issue but rather a matter of the svn version
> resp. the svn perl bindingds.
Good point. The machine where this is failing is an Ubuntu Intrepid box...
$ dpkg -l libsvn* | grep '^i'
ii  libsvn-perl                                1.5.1dfsg1-1ubuntu2
                Perl bindings for Subversion
ii  libsvn1                                    1.5.1dfsg1-1ubuntu2
                Shared libraries used by Subversion
ii  libsvncpp1                                 0.9.6-1
                Subversion C++ shared library
dpkg -l subversion* | grep '^i'
ii  subversion                                 1.5.1dfsg1-1ubuntu2
                Advanced version control system
On the F9 box where things succeed...

$rpm -qa subversion* subversion-perl-1.4.6-7.i386 subversion-1.4.6-7.i386 $ rpm -qa *svn* git-svn-1.6.0.6-3.fc9.i386

What are the versions in that F-10 box? Could it be an incompatibility with svn-1.5.x?

cheers,
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Michael J Gruber· Apr 29, 2009, 21:05 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

Martin Langhoff venit, vidit, dixit 29.04.2009 22:47:
Show 29 quoted lines
> On Wed, Apr 29, 2009 at 10:25 PM, Michael J Gruber
> <git@drmicha.warpmail.net> wrote:
>> Given the versions that fail for Martin and work for Avery and me I
>> would think it's not a git issue but rather a matter of the svn version
>> resp. the svn perl bindingds.
> 
> Good point. The machine where this is failing is an Ubuntu Intrepid box...
> 
> $ dpkg -l libsvn* | grep '^i'
> ii  libsvn-perl                                1.5.1dfsg1-1ubuntu2
>                 Perl bindings for Subversion
> ii  libsvn1                                    1.5.1dfsg1-1ubuntu2
>                 Shared libraries used by Subversion
> ii  libsvncpp1                                 0.9.6-1
>                 Subversion C++ shared library
> dpkg -l subversion* | grep '^i'
> ii  subversion                                 1.5.1dfsg1-1ubuntu2
>                 Advanced version control system
> 
> On the F9 box where things succeed...
> 
> $rpm -qa subversion*
> subversion-perl-1.4.6-7.i386
> subversion-1.4.6-7.i386
> $ rpm -qa *svn*
> git-svn-1.6.0.6-3.fc9.i386
> 
> What are the versions in that F-10 box? Could it be an incompatibility
> with svn-1.5.x?
1.5.4
But I just re-read your original report, and there's some inconsistency:

git-svn triggers cat-file's usage message which says "git-cat-file ...". The dash indicates that it is a git cat-file before v1.6.0.1-13-g34baebc (where the dash was removed), so it's definitely not the current maint you think you are using.

Do you have older ubuntu git packages installed in $PATH?
Michael
Martin Langhoff· Apr 30, 2009, 07:18 UTC · re: Michael J Gruber · lore

Re: git svn errors out with git-cat-file "usage" message

On Wed, Apr 29, 2009 at 11:05 PM, Michael J Gruber <git@drmicha.warpmail.net> wrote:

Show 8 quoted lines
> But I just re-read your original report, and there's some inconsistency:
>
> git-svn triggers cat-file's usage message which says "git-cat-file ...".
> The dash indicates that it is a git cat-file before v1.6.0.1-13-g34baebc
> (where the dash was removed), so it's definitely not the current maint
> you think you are using.
>
> Do you have older ubuntu git packages installed in $PATH?
Bingo! Yes,

~$ which git-cat-file /usr/bin/git-cat-file ~$ /usr/bin/git version git version 1.5.6.3

now that's really weird. git from ~/bin is using git-cat-file from /usr/bin instead of ~/libexec/git-core ... how is the libexec path set in the PATH during the execution of the script?

the funny thing is that Ubuntu wants to have git-core in place if you're rebuilding kernel packages. I don't need to rebuild my kernel anymore but I am sure this is an issue for others. What's the trick? Add the libexec/git-core to the PATH before /usr/bin? Should git internally append libexec/git-core earlier in the search path?

cheers,
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Michael J Gruber· Apr 30, 2009, 07:53 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

Martin Langhoff venit, vidit, dixit 30.04.2009 09:18:
Show 28 quoted lines
> On Wed, Apr 29, 2009 at 11:05 PM, Michael J Gruber
> <git@drmicha.warpmail.net> wrote:
>> But I just re-read your original report, and there's some inconsistency:
>>
>> git-svn triggers cat-file's usage message which says "git-cat-file ...".
>> The dash indicates that it is a git cat-file before v1.6.0.1-13-g34baebc
>> (where the dash was removed), so it's definitely not the current maint
>> you think you are using.
>>
>> Do you have older ubuntu git packages installed in $PATH?
> 
> Bingo! Yes,
> 
> ~$ which git-cat-file
> /usr/bin/git-cat-file
> ~$ /usr/bin/git version
> git version 1.5.6.3
> 
> now that's really weird. git from ~/bin is using git-cat-file from
> /usr/bin instead of ~/libexec/git-core ... how is the libexec path set
> in the PATH during the execution of the script?
> 
> the funny thing is that Ubuntu wants to have git-core in place if
> you're rebuilding kernel packages. I don't need to rebuild my kernel
> anymore but I am sure this is an issue for others. What's the trick?
> Add the libexec/git-core to the PATH before /usr/bin? Should git
> internally append libexec/git-core earlier in the search path?
> 

I'm pretty sure that git will use the correct version, i.e. "git cat-file -x" will give you the usage line for the recent version. Or does "env|grep GIT" return anything which could misdirect git?

I think the question is more what git-svn does. It uses git's perl bindings, and it may very well be the case that your current, locally installed git uses the current git-svn which in turn picks up the wrong Git.pm.

As far as I can see, the last explicit usage of "git-cat-file" (with dash) was removed from git-svn.perl in v1.5.5.1-136-gffe256f which equals v1.5.6-rc0~8^2~2 which should precede your older git, unless Debian/Ubuntu did something funny. (Fedora followed the out-of-bin decision for git-* only with a delay, e.g.) That's why I suspected a perl path issue. But I'm not a perl guy, so I'm sorry I can't help further than suggesting to uninstall the old git (deb version of --no-deps) and check if that's helping.

Michael
Andreas Ericsson· Apr 30, 2009, 08:26 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

Martin Langhoff wrote:
Show 22 quoted lines
> On Wed, Apr 29, 2009 at 11:05 PM, Michael J Gruber
> <git@drmicha.warpmail.net> wrote:
>> But I just re-read your original report, and there's some inconsistency:
>>
>> git-svn triggers cat-file's usage message which says "git-cat-file ...".
>> The dash indicates that it is a git cat-file before v1.6.0.1-13-g34baebc
>> (where the dash was removed), so it's definitely not the current maint
>> you think you are using.
>>
>> Do you have older ubuntu git packages installed in $PATH?
> 
> Bingo! Yes,
> 
> ~$ which git-cat-file
> /usr/bin/git-cat-file
> ~$ /usr/bin/git version
> git version 1.5.6.3
> 
> now that's really weird. git from ~/bin is using git-cat-file from
> /usr/bin instead of ~/libexec/git-core ... how is the libexec path set
> in the PATH during the execution of the script?
> 

If you're executing "git-svn", the "git-svn" found first in your $PATH will be used. Same with "git" really, so if you have a $PATH like this:

  PATH=/usr/bin:$(HOME)/bin
you will always use the git from /usr/bin (naturally).
Show 6 quoted lines
> the funny thing is that Ubuntu wants to have git-core in place if
> you're rebuilding kernel packages. I don't need to rebuild my kernel
> anymore but I am sure this is an issue for others. What's the trick?
> Add the libexec/git-core to the PATH before /usr/bin? Should git
> internally append libexec/git-core earlier in the search path?
> 

The possibly easiest solution to your particular problem is to just remove the files installed by the git-core package and then log out and back in (to clear any persistent shell cache). You may need to mark git-core as not updateable in your apt config.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Register now for Nordic Meet on Nagios, June 3-4 in Stockholm
 http://nordicmeetonnagios.op5.org/

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
Michael J Gruber· Apr 30, 2009, 08:46 UTC · re: Andreas Ericsson · lore

Re: git svn errors out with git-cat-file "usage" message

Andreas Ericsson venit, vidit, dixit 30.04.2009 10:26:
Show 30 quoted lines
> Martin Langhoff wrote:
>> On Wed, Apr 29, 2009 at 11:05 PM, Michael J Gruber
>> <git@drmicha.warpmail.net> wrote:
>>> But I just re-read your original report, and there's some inconsistency:
>>>
>>> git-svn triggers cat-file's usage message which says "git-cat-file ...".
>>> The dash indicates that it is a git cat-file before v1.6.0.1-13-g34baebc
>>> (where the dash was removed), so it's definitely not the current maint
>>> you think you are using.
>>>
>>> Do you have older ubuntu git packages installed in $PATH?
>>
>> Bingo! Yes,
>>
>> ~$ which git-cat-file
>> /usr/bin/git-cat-file
>> ~$ /usr/bin/git version
>> git version 1.5.6.3
>>
>> now that's really weird. git from ~/bin is using git-cat-file from
>> /usr/bin instead of ~/libexec/git-core ... how is the libexec path set
>> in the PATH during the execution of the script?
>>
> 
> If you're executing "git-svn", the "git-svn" found first in your $PATH
> will be used. Same with "git" really, so if you have a $PATH like this:
> 
>   PATH=/usr/bin:$(HOME)/bin
> 
> you will always use the git from /usr/bin (naturally).

But he wrote he executed "git svn", and "git --version" showed the more current version. So it can't be a PATH issue. It may be PERL5LIB, though.

Show 13 quoted lines
> 
>> the funny thing is that Ubuntu wants to have git-core in place if
>> you're rebuilding kernel packages. I don't need to rebuild my kernel
>> anymore but I am sure this is an issue for others. What's the trick?
>> Add the libexec/git-core to the PATH before /usr/bin? Should git
>> internally append libexec/git-core earlier in the search path?
>>
> 
> The possibly easiest solution to your particular problem is to just
> remove the files installed by the git-core package and then log out
> and back in (to clear any persistent shell cache). You may need to
> mark git-core as not updateable in your apt config.
> 
Martin Langhoff· Apr 30, 2009, 08:53 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 9:18 AM, Martin Langhoff <martin.langhoff@gmail.com> wrote:

Show 6 quoted lines
> Bingo! Yes,
>
> ~$ which git-cat-file
> /usr/bin/git-cat-file
> ~$ /usr/bin/git version
> git version 1.5.6.3
Actually, after removing the git-core package and all its dependencies...

# same git version that succeeds on Fedora 9, here says: $ git svn clone -T trunk http://paintweb.googlecode.com/svn paintweb.git usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1> error closing pipe: Broken pipe at /home/martin/libexec/git-core/git-svn line 3252 cat-file --batch: command returned error: 129

error closing pipe: Bad file descriptor at /home/martin/libexec/git-core/git-svn line 0 error closing pipe: Bad file descriptor at /home/martin/libexec/git-core/git-svn line 0 $ git version git version 1.6.0.6

# a newer git says... $ git svn clone -T trunk --ignore-paths releases http://paintweb.googlecode.com/svn paintweb.git usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1> Unexpected result returned from git cat-file at /home/martin/libexec/git-core/git-svn line 3526 Failed to read object 4b90eef95225bb9e34000e050d0cac8b84ab36f6 at /home/martin/libexec/git-core/git-svn line 3527.

$ git version git version 1.6.2.4.10.g2254d

... the plot thickens...

There is nothing in my env that would confuse git -- and my PATH has ~/bin as the first entry, trumping everything else. So perhaps the debian package had nothing to do with this?

Perl SVN bindings? How do I debug that side of things?
cheers,
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Michael J Gruber· Apr 30, 2009, 09:28 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

Martin Langhoff venit, vidit, dixit 30.04.2009 10:53:
Show 29 quoted lines
> On Thu, Apr 30, 2009 at 9:18 AM, Martin Langhoff
> <martin.langhoff@gmail.com> wrote:
>> Bingo! Yes,
>>
>> ~$ which git-cat-file
>> /usr/bin/git-cat-file
>> ~$ /usr/bin/git version
>> git version 1.5.6.3
> 
> Actually, after removing the git-core package and all its dependencies...
> 
> # same git version that succeeds on Fedora 9, here says:
> $ git svn  clone  -T trunk  http://paintweb.googlecode.com/svn paintweb.git
> usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1>
> error closing pipe: Broken pipe at
> /home/martin/libexec/git-core/git-svn line 3252
> cat-file --batch: command returned error: 129
> 
> error closing pipe: Bad file descriptor at
> /home/martin/libexec/git-core/git-svn line 0
> error closing pipe: Bad file descriptor at
> /home/martin/libexec/git-core/git-svn line 0
> $ git version
> git version 1.6.0.6
> 
> # a newer git says...
> $ git svn clone -T trunk --ignore-paths releases
> http://paintweb.googlecode.com/svn paintweb.git
> usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1>

That one is definitely not from a newer git. What do you do in between the two steps above and below, where the same command "git version" returns different results? You must have some older parts lying around somewhere, whether they get picked up by on old or new git svn or Git.pm.

What do the following say:

which git-cat-file which git git --exec-path #desperate last attemtp find / -name git-cat-file | xargs -n 1 sh -c

Show 21 quoted lines
> Unexpected result returned from git cat-file at
> /home/martin/libexec/git-core/git-svn line 3526
> Failed to read object 4b90eef95225bb9e34000e050d0cac8b84ab36f6 at
> /home/martin/libexec/git-core/git-svn line 3527.
> 
> $ git version
> git version 1.6.2.4.10.g2254d
> 
> ... the plot thickens...
> 
> There is nothing in my env that would confuse git -- and my PATH has
> ~/bin as the first entry, trumping everything else. So perhaps the
> debian package had nothing to do with this?
> 
> Perl SVN bindings? How do I debug that side of things?
> 
> cheers,
> 
> 
> 
> m
Martin Langhoff· Apr 30, 2009, 09:42 UTC · re: Michael J Gruber · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 11:28 AM, Michael J Gruber <git@drmicha.warpmail.net> wrote:

> That one is definitely not from a newer git. What do you do in between
> the two steps above and below, where the same command "git version"
> returns different results? You must have some older parts lying around
> somewhere, whether they get picked up by on old or new git svn or Git.pm.
I just do 'git checkout <version I want> && make && make install'.

See $ which git-cat-file $ which git /home/martin/bin/git $ git --exec-path /home/martin/libexec/git-core

I can't see anything suspicious in my install.

$ find / -name git-cat-file 2>/dev/null /home/martin/libexec/git-core/git-cat-file /home/martin/src/git/git-cat-file /usr/share/doc/mercurial/examples/git-viz/git-cat-file

cheers,
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Avery Pennarun· Apr 30, 2009, 14:41 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 4:53 AM, Martin Langhoff <martin.langhoff@gmail.com> wrote:

Show 8 quoted lines
> Actually, after removing the git-core package and all its dependencies...
>
> # same git version that succeeds on Fedora 9, here says:
> $ git svn  clone  -T trunk  http://paintweb.googlecode.com/svn paintweb.git
> usage: git-cat-file [-t|-s|-e|-p|<type>] <sha1>
> error closing pipe: Broken pipe at
> /home/martin/libexec/git-core/git-svn line 3252
> cat-file --batch: command returned error: 129
Try this:
  strace -fF git svn  clone  -T trunk
http://paintweb.googlecode.com/svn paintweb.git 2>&1 | egrep -i
'git.pm|git-svn'

If you wade through the output, it should tell you which git.pm and git-svn you're *really* getting.

Avery
Martin Langhoff· Apr 30, 2009, 15:03 UTC · re: Avery Pennarun · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 4:41 PM, Avery Pennarun <apenwarr@gmail.com> wrote:
Show 8 quoted lines
> Try this:
>
>  strace -fF git svn  clone  -T trunk
> http://paintweb.googlecode.com/svn paintweb.git 2>&1 | egrep -i
> 'git.pm|git-svn'
>
> If you wade through the output, it should tell you which git.pm and
> git-svn you're *really* getting.
The output looks reasonable:

$ strace -fF git svn clone -T trunk http://paintweb.googlecode.com/svn paintweb.git 2>&1 | egrep -i 'git.pm|git-svn' execve("/home/martin/libexec/git-core/git-svn", ["git-svn", "clone", "-T", "trunk", "http://paintweb.googlecode.com/s"..., "paintweb.git"], [/* 44 vars */]) = 0 open("/home/martin/libexec/git-core/git-svn", O_RDONLY|O_LARGEFILE) = 3 stat64("/home/martin/share/perl/5.10.0/Git.pmc", 0xbffa451c) = -1 ENOENT (No such file or directory) stat64("/home/martin/share/perl/5.10.0/Git.pm", {st_mode=S_IFREG|0444, st_size=35479, ...}) = 0 open("/home/martin/share/perl/5.10.0/Git.pm", O_RDONLY|O_LARGEFILE) = 4 [pid 23322] write(2, "Unexpected result returned from "..., 96Unexpected result returned from git cat-file at /home/martin/libexec/git-core/git-svn line 3252 write(2, "Failed to read object 4b90eef952"..., 116Failed to read object 4b90eef95225bb9e34000e050d0cac8b84ab36f6 at /home/martin/libexec/git-core/git-svn line 3253.

cheers,
martin
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Avery Pennarun· Apr 30, 2009, 16:26 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 11:03 AM, Martin Langhoff <martin.langhoff@gmail.com> wrote:

Show 28 quoted lines
> On Thu, Apr 30, 2009 at 4:41 PM, Avery Pennarun <apenwarr@gmail.com> wrote:
>> Try this:
>>
>>  strace -fF git svn  clone  -T trunk
>> http://paintweb.googlecode.com/svn paintweb.git 2>&1 | egrep -i
>> 'git.pm|git-svn'
>>
>> If you wade through the output, it should tell you which git.pm and
>> git-svn you're *really* getting.
>
> The output looks reasonable:
>
> $ strace -fF git svn  clone  -T trunk | http://paintweb.googlecode.com/svn paintweb.git 2>&1 | egrep -i 'git.pm|git-svn'
> execve("/home/martin/libexec/git-core/git-svn", ["git-svn", "clone",
> "-T", "trunk", "http://paintweb.googlecode.com/s"..., "paintweb.git"],
> [/* 44 vars */]) = 0
> open("/home/martin/libexec/git-core/git-svn", O_RDONLY|O_LARGEFILE) = 3
> stat64("/home/martin/share/perl/5.10.0/Git.pmc", 0xbffa451c) = -1
> ENOENT (No such file or directory)
> stat64("/home/martin/share/perl/5.10.0/Git.pm", {st_mode=S_IFREG|0444,
> st_size=35479, ...}) = 0
> open("/home/martin/share/perl/5.10.0/Git.pm", O_RDONLY|O_LARGEFILE) = 4
> [pid 23322] write(2, "Unexpected result returned from "...,
> 96Unexpected result returned from git cat-file at
> /home/martin/libexec/git-core/git-svn line 3252
> write(2, "Failed to read object 4b90eef952"..., 116Failed to read
> object 4b90eef95225bb9e34000e050d0cac8b84ab36f6 at
> /home/martin/libexec/git-core/git-svn line 3253.

And do the contents of these files match the ones in your git source directory? What are their md5sums?

/home/martin/libexec/git-core/git-svn /home/martin/share/perl/5.10.0/Git.pm

Avery
Martin Langhoff· Apr 30, 2009, 16:31 UTC · re: Avery Pennarun · lore

Re: git svn errors out with git-cat-file "usage" message

On Thu, Apr 30, 2009 at 6:26 PM, Avery Pennarun <apenwarr@gmail.com> wrote:
Show 5 quoted lines
> And do the contents of these files match the ones in your git source
> directory?  What are their md5sums?
>
> /home/martin/libexec/git-core/git-svn
> /home/martin/share/perl/5.10.0/Git.pm
They match alright -

sha1sum /home/martin/share/perl/5.10.0/* e5ceeaa91bfe878ac45a5e5daad4fa1d50b6ff4a /home/martin/share/perl/5.10.0/Error.pm d752abdebc8e40801d891859e6764631c2f1e8ff /home/martin/share/perl/5.10.0/Git.pm

~/src/git$ sha1sum perl/blib/lib/*pm e5ceeaa91bfe878ac45a5e5daad4fa1d50b6ff4a perl/blib/lib/Error.pm d752abdebc8e40801d891859e6764631c2f1e8ff perl/blib/lib/Git.pm

~/src/git$ sha1sum /home/martin/libexec/git-core/git-svn git-svn 37cae8b77552f0bbdd54e060318bbc6a269a7577 /home/martin/libexec/git-core/git-svn 37cae8b77552f0bbdd54e060318bbc6a269a7577 git-svn

it's really weird.
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Michael J Gruber· Apr 30, 2009, 16:49 UTC · re: Martin Langhoff · lore

Re: git svn errors out with git-cat-file "usage" message

Martin Langhoff venit, vidit, dixit 30.04.2009 18:31:
Show 23 quoted lines
> On Thu, Apr 30, 2009 at 6:26 PM, Avery Pennarun <apenwarr@gmail.com> wrote:
>> And do the contents of these files match the ones in your git source
>> directory?  What are their md5sums?
>>
>> /home/martin/libexec/git-core/git-svn
>> /home/martin/share/perl/5.10.0/Git.pm
> 
> They match alright -
> 
> sha1sum /home/martin/share/perl/5.10.0/*
> e5ceeaa91bfe878ac45a5e5daad4fa1d50b6ff4a
> /home/martin/share/perl/5.10.0/Error.pm
> d752abdebc8e40801d891859e6764631c2f1e8ff  /home/martin/share/perl/5.10.0/Git.pm
> 
> ~/src/git$ sha1sum perl/blib/lib/*pm
> e5ceeaa91bfe878ac45a5e5daad4fa1d50b6ff4a  perl/blib/lib/Error.pm
> d752abdebc8e40801d891859e6764631c2f1e8ff  perl/blib/lib/Git.pm
> 
> ~/src/git$ sha1sum /home/martin/libexec/git-core/git-svn git-svn
> 37cae8b77552f0bbdd54e060318bbc6a269a7577  /home/martin/libexec/git-core/git-svn
> 37cae8b77552f0bbdd54e060318bbc6a269a7577  git-svn
> 
> it's really weird.

Have you ever checked the usage strings which your instances of "git-cat-file" output, as I suggested?

BTW: Does make test work for you?
Michael

← back to recent threads