Git dumb HTTP protocol should work without update-server-info

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

 



this works:

git ls-remote /path/to/repo2/
git ls-remote /path/to/repo2/.git/
git ls-remote file:///path/to/repo2/
git ls-remote file:///path/to/repo2/.git/

this fails:

python -m http.server -d /path/to/repo2/ &
git ls-remote http://localhost:8000/
git ls-remote http://localhost:8000/.git/

workaround:

pushd /path/to/repo2/.git/
git --bare update-server-info
mv hooks/post-update.sample hooks/post-update
popd
git ls-remote http://localhost:8000/

expected:
dumb http remotes should behave like file remotes



> git --bare update-server-info

that command creates the file
/path/to/repo2/.git/info/refs
but that is just an optimization
for http servers with high latency

my "dumb" http server
is smart enough to handle http range requests
so there is no need
to download all the files from .git/

but also without http range requests
this should "just work"
and the user should be responsible for optimizations



as another workaround
i tried to mount the .git/ directory with httpdirfs
but httpdirfs fails to mount git repos, see
https://github.com/fangfufu/httpdirfs/issues/183



related:

https://stackoverflow.com/questions/2085402/what-does-git-update-server-info-do

https://stackoverflow.com/questions/2278888/private-git-repository-over-http




[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