diff options
author | Lukas Fleischer <lfleischer@archlinux.org> | 2015-11-14 13:39:21 +0100 |
---|---|---|
committer | Lukas Fleischer <lfleischer@archlinux.org> | 2015-11-14 13:40:53 +0100 |
commit | 002d348d903c9f46e8fef453279eec5482eb43bf (patch) | |
tree | 7af48e733319d8c1ac007a4904c2efa9c54eaa94 | |
parent | a114476e8134f27d2dd33b1f023535e3cc8bd094 (diff) | |
download | aur-002d348d903c9f46e8fef453279eec5482eb43bf.tar.gz aur-002d348d903c9f46e8fef453279eec5482eb43bf.tar.xz |
Describe how to omit "have" lines
A new feature in Git allows for omitting "have" lines corresponding to
refs outside the current Git namespace. Explain how to enable this
feature in the INSTALL instructions and in the Git interface
documentation.
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
-rw-r--r-- | INSTALL | 2 | ||||
-rw-r--r-- | doc/git-interface.txt | 13 |
2 files changed, 15 insertions, 0 deletions
@@ -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. |