summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INSTALL2
-rw-r--r--doc/git-interface.txt13
2 files changed, 15 insertions, 0 deletions
diff --git a/INSTALL b/INSTALL
index d68fa269..d9569112 100644
--- a/INSTALL
+++ b/INSTALL
@@ -46,6 +46,8 @@ Setup on Arch Linux
# mkdir /srv/http/aurweb/aur.git/
# cd /srv/http/aurweb/aur.git/
# git init --bare
+ # git config --local transfer.hideRefs '^refs/'
+ # git config --local transfer.hideRefs '!refs/'
# ln -s ../../git-interface/git-update.py hooks/update
# chown -R aur .
diff --git a/doc/git-interface.txt b/doc/git-interface.txt
index 9ded20f6..4a24eeff 100644
--- a/doc/git-interface.txt
+++ b/doc/git-interface.txt
@@ -80,3 +80,16 @@ request.
An example configuration for nginx and fcgiwrap can be found in the INSTALL
instructions in the top-level directory.
+
+Further Configuration
+---------------------
+
+When using Git namespaces, Git advertises refs outside the current namespace as
+so-called "have" lines. This is normally used to reduce traffic but it has the
+opposite effect in the case of aurweb: Many essentially useless lines are
+transferred to the Git client during `git push` operations.
+
+In order to omit these advertisements, add the strings "^refs/" and "!refs/" to
+the transfer.hideRefs configuration setting. Note that the order of these
+patterns is important ("^refs/" must come first) and that Git 2.7 or newer is
+required for them to work.