On Fri, 10 Oct 2014 00:37:17 -0700 (PDT) j...@norricorp.f9.co.uk wrote: [...] > [vobadm@centos64 git_repos]$ ls -l > total 20 > drwxrwxrwx. 7 vobadm users 4096 Oct 9 17:53 csg2.git > drwxrwsr-x. 7 vobadm users 4096 Jan 30 2013 dev_maven.git > -rw-r--r--. 1 vobadm users 47 Oct 9 13:42 groups > drwxrwxrwx. 7 vobadm users 4096 Sep 9 09:39 norriquest.git > -rw-r--r--. 1 vobadm users 43 Oct 9 13:41 passwords
Please note that normally having world-writable directories other than /tmp and /var/tmp is a very bad idea. Hope you've done this intentionally for testing purposes only. [...] > <Location /csg2.git> > AuthType Basic [...] > C:\GitWork>git clone *http://centos64/git/csg2.git* You've set up authenticated access for the "/csg2.git" path component of your Git URI and then used "/git/csg2.git" when cloning, so whatever is defined by that <Location> section is never considered by the web server because it does not match the URI. You could type http://centos64/csg2.git in your browser to see it asking you to authenticate. [...] > C:\GitWork\http_csg2\csg2>git push > Counting objects: 6, done. > Delta compression using up to 4 threads. > Compressing objects: 100% (2/2), done. > Writing objects: 100% (4/4), 325 bytes | 0 bytes/s, done. > Total 4 (delta 1), reused 0 (delta 0) > error: unpack failed: unpack-objects abnormal exit > To *http://centos64/git/csg2.git* <http://centos64/git/csg2.git> > ! [remote rejected] master -> master (n/a (unpacker error)) > error: failed to push some refs to '*http://centos64/git/csg2.git* > <http://centos64/git/csg2.git>' To me, it looks like the git-http-backend binary failing to unpack the stream your local Git instance sent to it. Unfortunately, since the error report is really moot, I can't tell why exactly did it fail. One thing to consider is that to unpack something, you have to *write* whatever is unpacked somewhere. I presume, the HTTP backend tries to unpack those objects to the repostory's object storage, and fails. What would I check: 1) /var/log/apache/error.log (or whatever serves this purpose on CentOS). 2) Verify that the user your Apache instance uses has the necessary permissions to write to those repositories. I see the directories of your repos have (normally nonsensical) access bits (everyone has write access) but the object storage of a Git repo is a hierarchy of directories, so if you only chmod'ded the top-level ones, it's not gonna work. If the reason really is (2), make sure to properly setup the access modes afterwards. If you'll be unable to figure out why git-http-backend fails, one approach could be to create a wrapper script (targeted by ScriptAlias) around git-http-backend which would run that program under `strace -f` and record its output somewhere. Then after a failed attempt at pushing you could inspect the generated trace to see which system call failed, and with which error. -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.