f37 -> f39
[infrastructure.git] / scripts / commit-access-control.cfg
1 # This is a sample configuration file for commit-access-control.pl.
2 #
3 # This file uses the Windows ini style, where the file consists of a
4 # number of sections, each section starts with a unique section name
5 # in square brackets.  Parameters in each section are specified as
6 # Name = Value.  Any spaces around the equal sign will be ignored.  If
7 # there are multiple sections with exactly the same section name, then
8 # the parameters in those sections will be added together to produce
9 # one section with cumulative parameters.
10 #
11 # The commit-access-control.pl script reads these sections in order,
12 # so later sections may overwrite permissions granted or removed in
13 # previous sections.
14 #
15 # Each section has three valid parameters.  Any other parameters are
16 # ignored.
17 #   access = (read-only|read-write)
18 #
19 #     This parameter is a required parameter.  Valid values are
20 #     `read-only' and `read-write'.
21 #
22 #      The access rights to apply to modified files and directories
23 #      that match the `match' regular expression described later on.
24 #
25 #   match = PERL_REGEX
26 #
27 #     This parameter is a required parameter and its value is a Perl
28 #     regular expression.
29 #
30 #     To help users that automatically write regular expressions that
31 #     match the beginning of absolute paths using ^/, the script
32 #     removes the / character because subversion paths, while they
33 #     start at the root level, do not begin with a /.
34 #
35 #  users = username1 [username2 [username3 [username4 ...]]]
36 #    or
37 #  users = username1 [username2]
38 #  users = username3 username4
39 #
40 #     This parameter is optional.  The usernames listed here must be
41 #     exact usernames.  There is no regular expression matching for
42 #     usernames.  You may specify all the usernames that apply on one
43 #     line or split the names up on multiple lines.
44 #
45 #     The access rights from `access' are applied to ALL modified
46 #     paths that match the `match' regular expression only if NO
47 #     usernames are specified in the section or if one of the listed
48 #     usernames matches the author of the commit.
49 #
50 # By default, because you're using commit-access-control.pl in the
51 # first place to protect your repository, the script sets the
52 # permissions to all files and directories in the repository to
53 # read-only, so if you want to open up portions of the repository,
54 # you'll need to edit this file.
55 #
56 # NOTE: NEVER GIVE DIFFERENT SECTIONS THE SAME SECTION NAME, OTHERWISE
57 # THE PARAMETERS FOR THOSE SECTIONS WILL BE MERGED TOGETHER INTO ONE
58 # SECTION AND YOUR SECURITY MAY BE COMPROMISED.
59
60 [Make everything read-write for all users]
61 match   = .*
62 access  = read-write
63
64 [Make modules read-only for all users]
65 match   = ^(playground|tests)/.*
66 access  = read-only
67
68 [An illustration of a user-based access]
69 match   = ^tests/.*
70 users   = thierry
71 access  = read-write