git clone rsync:// broken

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

 



Hi,

Summary:

There seems to be a problem with cloning via rsync in that a corrupted
packed-refs file is/maybe transmitted, and the HEAD file is not
correctly transfered.

Detail:

I've been encountering some problems getting things set up so people
can clone using rsync.

The object repository seems to transfer fine, in that the resulting
directory is the right size approximately, but the cloning fails with
the error message

    warning: remote HEAD refers to nonexistent ref, unable to checkout

Inspecting the .git/HEAD file it points at refs/heads/master,  which
doesn't exist as for historical reasons our master is called 'blead'.

Looking at the packed-refs file there was a duplicate incorrect entry
in the file. Which was remedied by executing

    git pack-refs --all

on the source repository which improves the situation somewhat, as
after a clone fails we were able do a

   git checkout -b blead origin/blead

and things seem ok. But the clone still fails as the HEAD is not correct.

If we use git://, http://, or ssh:// protocols to clone everything
transfers fine.

I checked in the #git channel and there were a number of comments by
people that helped me investigate:

because git transport via rsync seems to assume packed-refs is sorted
- which it maybe wasnt (cant check now anymore).
That caused the failure like "fatal: Duplicated ref, and SHA1s don't
match: refs/remotes/origin/p4/maint-5.10/perl"
The remaining problem is, that HEAD seems not get fetched at all
And I dont see how HEAD should get fetched in the transport.c code
The other dumb protocol aka http explicitly gets it
So i would bugreport this

For anyone wanting to try the repo is public at:
perl5.git.perl.org/perl, which works fine with http://, and git://,
but currently rsync:// is broken.

This isnt the official perl repository yet. We were planning to go
live with it tomorrow. Meaning if you do clone it please be aware that
we might replace the repository with a complete new version before it
goes live.

cheers,
Yves
ps: Im not on list, so please cc me in any replies.



-- 
perl -Mre=debug -e "/just|another|perl|hacker/"
--
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]

  Powered by Linux