blob: b30ad47d4b56585fc2fbb6304a35294f2eac96ff (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#
#
# Git Smart HTTP Support
# git push ONLY
SetEnv GIT_PROJECT_ROOT /srv/git
SetEnv GIT_HTTP_EXPORT_ALL 1
# Expose git-receive-pack and info/refs.
ScriptAliasMatch "^(/.+/(git-receive-pack|info/refs))$" \
/usr/libexec/git-core/git-http-backend$1
# Authenticate against git push.
<LocationMatch "^/.+/(git-receive-pack)$">
AuthType Basic
AuthName "Git Push Access"
AuthUserFile ${GIT_HTTP_AUTH_FILE}
Require valid-user
</LocationMatch>
# Deny info/refs push unless it's for git push.
<LocationMatch "^/.+/info/refs$">
AuthType Basic
AuthName "Git Push Access"
AuthUserFile ${GIT_HTTP_AUTH_FILE}
<RequireAll>
Require expr %{QUERY_STRING} == "service=git-receive-pack"
Require valid-user
</RequireAll>
</LocationMatch>
# Explicitly deny git clone/fetch just in case.
<LocationMatch "^/.+/git-upload-pack$">
Require all denied
</LocationMatch>
|