问题
I am running git daemon with the following command.
c:\cygwin\bin\git daemon --reuseaddr --base-path=/cygdrive/S --export-all --verbose --enable=receive-pack
I am able to clone and pull updates but when I try to push I get
$ git push origin master
Counting objects: 6, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (6/6)
, then it hangs
I am currently using git version 1.7.0.4
回答1:
I have the same problem (Ubunut as git server 1.7.0.4, Windows Msysgit is git client 1.7.0.2). While it is ok if I use ubuntu git client.
I updated the client to 1.7.1.0, it doesn't help
I use git-daemon to manage the repo (enable receive-back server), and it is a problem. (msysgit with gitdaemon)
When I switch to gitolite, the problem disappear.
Suggest to use git-daemon for read-only
回答2:
I had the same (similar?) problem with cygwin git. After one cygwin's update it stopped working properly with remote git repos, both on linux and cygwin.
At first it looked random and was hard to identify. Some commands worked, some failed. It looks like it was connected to the size of data being transferred.
I believe it's a client-side problem with SSH in cygwin as other git clients can connect normally. For me solution was to install msysgit and choose at install its own SSH client, not cygwin's. Putty should work as well, I guess.
回答3:
I had this same problem with server Ubuntu git daemon 1.7.3.2 and client Windows Msysgit 1.7.4. Downgraded Msysgit to 1.6.5.1 and the problem was resolved.
回答4:
Also wasted whole day trying to get this work. Just stucked with updating 100% At the end it was the mysgit 1.6.5.1 what made it work. Also if that does not work try in remote linux the command git config --bool core.bare true when inside your repo folder
来源:https://stackoverflow.com/questions/3071667/unable-to-push-to-git-repository-it-hangs-after-writing-objects-100