How to set up git apache 2.4 on Windows
At my first shot I was abl to glone the repo but I wasn’t able to push into the repo. Setting the LogLevel to debug showed: AH01215: Service not enabled: ‘receive-pack’: C:/Program Files (x86)/Git/libexec/git-core/git-http-backend.exe
Googling suggested to enable WebDAV. I doubted that but tried it anyway. Trail and error! It did not work about. The git client showed a 403 -> an access or authentication error. The authentication triggered something in my mind. So I searched for the auth variable that git uses. Et voilà: Git uses the remote user in a different way.
SetEnv REMOTE_USER $REDIRECT_REMOTE_USER
The following set up is not secure, just for local testing. It requires a http authentication ;)
<VirtualHost *:80>
ServerName git.local.apachehaus.de
DocumentRoot "/Users/mario/work/git"
CustomLog "C:\nul" common
SetEnv GIT_PROJECT_ROOT /Users/mario/work/git
SetEnv GIT_HTTP_EXPORT_ALL true
SetEnv REMOTE_USER $REDIRECT_REMOTE_USER
ScriptAliasMatch "(?x)^/(.*/(HEAD | info/refs | objects/(info/[^/]+ | [0-9a-f]{2}/[0-9a-f]{38} | pack/pack-[0-9a-f]{40}.(pack|idx)) | git-(upload|receive)-pack))$" "C:/Program Files (x86)/git/libexec/git-core/git-http-backend.exe/$1"
<Directory "/Users/mario/work/git">
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
<Directory "C:/Program Files (x86)/git/libexec/git-core/">
Options ExecCGI
</Directory>
<Directory />
Options Indexes FollowSymLinks ExecCGI
Require all granted
</Directory>
</VirtualHost>