Re: reexporting git repository via git-daemon
flat view
From: Jakub Narebski <hidden>
Date: 2016-08-11 20:24:52
Arkadiusz Miskiewicz wrote:
I have weird problem wit git (1.4.4.2).
I have tried to reproduce this error, but no luck.
$ git --bare clone git://git.kernel.org/pub/scm/git/git.git fetches everything correctly;
It should be "git clone --bare git://git.kernel.org/pub/scm/git/git.git" or "git clone --bare git://git.kernel.org/pub/scm/git/git.git git.git" Git doesn't need GIT_DIR for clone.
$ cd /tmp $ git clone /gitroot/home/gitrepo/git also correctly fetched. The problem begins with exporting that cloned repo once again via git-daemon:
I didn't do this second cloning, but it should not matter I think.
$ git clone git://git.my-server/git fatal: unexpected EOF fetch-pack from 'git://git.my-server/git' failed.
True, the error messages of git-clone are bit cryptic and doesn't give us much information. Does there exist such repository? Perhaps it is not exported? Were there any error?
strace on git-daemon side:
[...]
18241 lstat("refs/tags/v1.4.1-rc2", {st_mode=S_IFREG|0644, st_size=41, ...}) =
0
18241 open("refs/tags/v1.4.1-rc2", O_RDONLY) = 7
18241 read(7, "33c9db007159db11c1ad5fa7101ea95853740acf\n", 255) = 41
18241 close(7) = 0
18241 write(1, "004233c9db007159db11c1ad5fa7101ea95853740acf
refs/tags/v1.4.1-rc2\n", 66) = 66
18241 write(1, "0045abc02670169cee9541793a86324a014272ca8ed5
refs/tags/v1.4.1-rc2^{}\n", 69) = 69
18241 stat("refs/tags/v1.4.1.1", {st_mode=S_IFREG|0644, st_size=41, ...}) = 0
18241 lstat("refs/tags/v1.4.1.1", {st_mode=S_IFREG|0644, st_size=41, ...}) = 0
18241 open("refs/tags/v1.4.1.1", O_RDONLY) = 7
18241 read(7, "8419a453dc088b25b63ab1746d3d7e679caf686d\n", 255) = 41
18241 close(7)
18241 write(1, "00408419a453dc088b25b63ab1746d3d7e679caf686d
refs/tags/v1.4.1.1\n", 64) = 64
18241 write(2, "fatal: ", 7) = 7
18241 write(2, "corrupted pack
file ./objects/pack/pack-0bb22295a585ac173504a2f8dfb3e31e074a8715.pack", 85)
= 85
18241 write(2, "\n", 1)
100% repeatable at this moment. Any ideas?WORKSFORME $ git --version git version 1.4.4.1 $ git clone --bare git://git.kernel.org/pub/scm/git/git.git remote: Generating pack... remote: Done counting 33587 objects. remote: Deltifying 33587 objects. remote: 100% (33587/33587) done Indexing 33587 objects. remote: Total 33587, written 33587 (delta 23205), reused 33325 (delta 23034) 100% (33587/33587) done Resolving 23205 deltas. 100% (23205/23205) done By the way, I wonder why git-clone names bare repository 'git', and not 'git.git' as, I think, it should? $ git-daemon --verbose --export-all --base-path=<pwd> [31823] Connection from 127.0.0.1:46736 [31823] Extended attributes (16 bytes) exist <host=localhost> [31823] Request upload-pack for '/git.git' [31823] Disconnected The above is generated when I was cloning locally, i.e. when I run the following command: $ git clone git://localhost/git.git remote: Generating pack... remote: Done counting 33587 objects. remote: Deltifying 33587 objects. remote: 100% (33587/33587) done Indexing 33587 objects. remote: Total 33587, written 33587 (delta 23205), reused 33587 (delta 23205) 100% (33587/33587) done Resolving 23205 deltas. 100% (23205/23205) done Checking files out... 100% (743/743) done which went without any problem. P.S. Please reply also to git mailing list -- Jakub Narebski Warsaw, Poland ShadeHawk on #git