Soo eu realmente consegui consertar isso sozinho:
<VirtualHost *:80>
DocumentRoot /home/subgit/repos
<Directory /home/subgit/repos>
Options None
AllowOverride none
Order allow,deny
Allow from all
</Directory>
CustomLog /home/subgit/logs/access_log combined
SuexecUserGroup subgit subgit
ScriptAlias /git/ /home/subgit/bin/gitolite-suexec-wrapper.sh/
RewriteEngine On
RewriteCond %{QUERY_STRING} service=git-receive-pack [OR,NC]
RewriteCond %{REQUEST_URI} ^/git/.*/git-receive-pack$ [NC]
RewriteRule .* - [E=AUTHREQUIRED:yes]
<LocationMatch "/git/">
Order Allow,Deny
Deny from env=AUTHREQUIRED
Allow from all
Satisfy Any
AuthType Basic
AuthName "subgit"
AuthBasicProvider file
AuthUserFile /home/subgit/etc/subgit
Require valid-user
</LocationMatch>
<LocationMatch "/svn">
DAV svn
SvnPath /home/subgit/repos/testrepo
AuthType Basic
AuthName "subgit"
AuthBasicProvider file
AuthUserFile /home/subgit/etc/subgit
AuthzSVNAccessFile /home/subgit/etc/subgit.access
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</LocationMatch>
</VirtualHost>
No que diz respeito aos comentários sobre integração contínua, não, não é perfeito, mas é muito bom e bom o suficiente para o propósito.