I'm trying to set up git and Apache on Home windows. I've installed MSYSGit 1.7.3 on my small Home windows 2008 server (x64). I decided the git instructions should work from the Home windows command prompt after i installed msysgit.
I've added wrinkles to my http.conf file:
SetEnv GIT_PROJECT_ROOT C:/Repositories SetEnv GIT_HTTP_EXPORT_ALL ScriptAlias /git/ "C:/Progra~2/git/libexec/git-core/git-http-backend.exe/" <Directory /> Options +ExecCGI Allow from all </Directory>
I produced a repository (MKE_Playground.git). I added personal files test.txt.
After I make an effort to access the URL http://localhost/git/MKE_Playground.git I recieve this error within the Apache log:
[Tue Feb 01 15:56:09 2011] [notice] Child 1164: Child process is running [Tue Feb 01 15:56:09 2011] [notice] Child 1164: Acquired the start mutex. [Tue Feb 01 15:56:09 2011] [notice] Child 1164: Starting 64 worker threads. [Tue Feb 01 15:56:09 2011] [notice] Child 1164: Starting thread to listen on port 80. 127.0.0.1 - - [01/Feb/2011:15:56:14 -0600] "GET /git/MKE_Playground.git HTTP/1.1" 500 539 [Tue Feb 01 15:56:14 2011] [error] [client 127.0.0.1] Premature end of script headers: git-http-backend.exe
I understand that which means that the headers in the script were malformed. Basically were writing the script I'd check there, however i think that the git after sales typically provides correct headers. My undertake this would be that the git http after sales unsuccessful for whatever reason. How can i visit determine why it unsuccessful? It is possible to Git log somewhere?
I had been fighting exactly the same problem. During my situation it had been a person permission problem. You should check the "loginInch information for that Apache Home windows Service and test together with your domain user for example (User Interface->Administrative Tools->Services->Apache->Log On Tab).
Following a reboot, browsing for your http://localhost/git/MKE_Playground.git should then provide you with a Request not supported error inside your error.log. That's fine.
git clone http://localhost/git/MKE_Playground.git should work then.
I worked having a similar problem earlier.
Running "git-http-after sales.exe" inside a Cygwin spend says the dll, "libiconv2.dll" couldn't be located. The file is situated within the git/bin directory for my Git install (mostly defaults). I added the bin and libexec sites from the git install to my Path, and could clone the git repository in your area through Apache.
Note: My Apache error logs appeared as if this - git-http-after sales.exe was failing around the missing dll, although not confirming that within the httpd logs:
[Mon February 14 15:26:02 2011] [notice] Child 3308: Beginning 64 worker threads. [Mon February 14 15:26:02 2011] [notice] Child 3308: Beginning thread to pay attention on port 80. [Mon February 14 15:26:20 2011] [error] [client 127...1] Premature finish of script headers: git-http-after sales.exe [Mon February 14 15:26:20 2011] [error] [client 127...1] Premature finish of script headers: git-http-after sales.exe
I've abandonded the thought of running Git on Home windows. As a result this really is no more an problem for me personally.
This labored for my 1.7.6.msysgit. setup:
In http://www.jeremyskinner.co.uk/2010/07/31/hosting-a-git-server-under-apache-on-windows/, Jeremy Skinner indicates that it should be easy to run Gitlibexecgit-http-after sales.exe inside a Home windows cmd spend. If this fails, copy Gitbinlibiconv-2.dll and Gitbinlibiconv2.dll to Gitlibexecgit-core and check out again. If you're able to call git-http-after sales.exe and it offers a superior a "500 Internal Server Error", try your clone or fetch again.