This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Trouble with cygwin git


I'm having the problem cloning a git repository using
Cygwin git 1.5.3.5:

$ git clone git://git.kernel.org/pub/scm/git/git.git
Initialized empty Git repository in /git/git/.git/
remote: Generating pack...
remote: Counting objects: 4991
Done counting 67423 objects.
remote: Deltifying 67423 objects...
remote:  100% (67423/67423) done
Indexing 67423 objects...
remote: Total 67423 (delta 47516), reused 66055 (delta
46502)
 100% (67423/67423) done
Resolving 47516 deltas...
 100% (47516/47516) done
fatal: failed to unpack tree object HEAD

Cygwin information:
$ cygcheck -s
[...]
C:\cygwin               /          system  binmode
c:\DOCUME~1\xxxxxx\cvs  /cvs       system  binmode
c:\DOCUME~1\xxxxxx\git  /git       system  binmode
C:\cygwin/bin           /usr/bin   system  binmode
C:\cygwin/lib           /usr/lib   system  binmode
..                       /cygdrive  system 
binmode,cygdrive
[...]
    Cygwin DLL version info:
        DLL version: 1.5.25
        DLL epoch: 19
        DLL bad signal mask: 19005
        DLL old termios: 5
        DLL malloc env: 28
        API major: 0
        API minor: 156
        Shared data: 4
        DLL identifier: cygwin1
        Mount registry: 2
        Cygnus registry name: Cygnus Solutions
        Cygwin registry name: Cygwin
        Program options name: Program Options
        Cygwin mount registry name: mounts v2
        Cygdrive flags: cygdrive flags
        Cygdrive prefix: cygdrive prefix
        Cygdrive default prefix:
        Build date: Fri Dec 14 19:21:07 CET 2007
        CVS tag: cr-0x5f1
        Shared id: cygwin1S4
[...]

Note above that all mounts are binary.

In git, what is failing is the following fragment on
sha1_file.c, link_temp_to_file(), around line 1968:

	if (!link(tmpfile, filename))
		return 0;

tmpfile: "/git/git/.git/objects/tmp_pack_H4xHmD"
filename:
"/git/git/.git/objects/pack/pack-139482038782b17f70018a3222052c02c7254a01.pack"

errno upon return: EEXIST

I don't think this part of sha1_file.c has changed in
some time.  Has Cygwin link() changed recently?

FWIW, if I rewrite the above fragment as:

	if (!rename(tmpfile, filename))
		return 0;

I don't see the failure anymore.



      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]