gitolite/example.conf
2009-08-24 06:11:23 +05:30

66 lines
2.1 KiB
Plaintext

# example conf file for gitosis-lite
# comments in the normal shell-ish style; no surprises there
# objectives, over and above gitosis:
# - simpler syntax
# - no gitweb/daemon control
# - allows ff/non-ff control
# - allows branch level control
# ----------------------------------------------------------------------------
# user groups; syntax:
# @groupname = username [...]
# too many users? just add more such lines
# (they accumulate, like squid ACLs)
@customers = cust1 cust2
@customers = cust99
@interns = indy james
@staff = me alice
# you can nest groups; they'll be fully expanded in actual use
@staff = bob @interns
@secret_staff = bruce whitfield martin
# ----------------------------------------------------------------------------
# each section pertains to one or more repo(s); syntax:
# repo reponame [...]
# (R|RW|RW+) [list of ref names] = [list of users]
# - RW+ means non-ff push is allowed
# - if no ref name exists, the rule applies to all refs
# - ref names are perl regex patterns
# - suffixed by "$"
# - prefixed by "refs/heads/" if it doesn't start with "refs/"
# (i.e., tags have to be explicitly named as refs/tags/pattern)
# - the order of entries matters: the first ref+action line (for the repo)
# that matches is what counts. If the user is listed, the action is
# allowed, otherwise it is rejected.
# - list of users can use any group name defined earlier
# - "@all" is a special, predefined, groupname
# anyone can play in the sandbox
repo sandbox
RW+ = @all
# my repo and alice's repo have the same memberships and access, so we just
# club them
repo myrepo alicerepo
RW+ = me alice
R = bob eve
repo custrepo
RW = @customers
R = @staff
# idea for the tags syntax shamelessly copied from git.git
# Documentation/howto/update-hook-example.txt :)
repo secret
RW+ pu = bruce
RW master next = bruce
RW refs/tags/v[0-9].* = bruce
RW tmp/.* = @secret_staff
R = @secret_staff