How do I prevent apache from serving the .git directory?
Solution 1:
It's not working because you have 'svn' instead of 'git' in the rule. All you have to do is to replace the 'svn' with 'git'.
<Directorymatch "^/.*/\.git/">
Order 'deny,allow'
Deny from all
</Directorymatch>
Solution 2:
This has the same effect as many of the other answers but is much simpler:
RedirectMatch 404 /\.git
This can go into .htaccess
or your server config file. It hides any file or directory whose name begins with .git
(e.g. a .git
directory or .gitignore
file) by returning a 404. So not only are the contents of your Git repo hidden, its very existence is hidden too.