gerrit/gerrit-server/src/main/java/com/google/gerrit/server
Shawn O. Pearce 6a765190df Move "ref_rights" table into Git
Permissions are stored in the project.config file within the
refs/meta/config branch of each project.  This makes the rules
more flexible in the future, as well as adds version control.

For example:

  [access "refs/*"]
    owner = group tools-owners

  [access "refs/heads/*"]
    label-Verified = -1..+1 group tools-dev
    label-Verified = -1..+1 group tools-owners
    label-Code-Review = -2..+2 group tools-owners
    submit = group tools-dev
    submit = group tools-owners

  [access "refs/heads/stable"]
    exclusiveGroupPermissions = read create push
    read = group Anonymous Users
    push = group tools-repo-maintainer

To enable easy remote editing of the configuration rules, the
following access block is added by default to -- All Projects --
and is thus inherited throughout the entire site:

  [access "refs/meta/config"]
    read = group Project Owners
    push = group Project Owners

This configuration section permits any project owner or site
administrator (as they are indirectly always a project owner of
any project) to push changes to the project.config file within
the refs/meta/config branch, updating access (and other project
information) remotely without using the web UI.

Change-Id: Idb56f657a4bf88108ad40bbb19d831e6806b68c5
Signed-off-by: Shawn O. Pearce <sop@google.com>
2011-05-19 16:53:03 -07:00
..
account Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
auth/ldap Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
cache Fix more rawtype warnings 2011-05-19 09:58:35 -07:00
config Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
contact init: Refactor init to be small parts created through Guice 2009-12-17 12:16:48 -08:00
events Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
git Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
ioutil Update JGit to org.eclipse.jgit 0.5.1.51-g96b2e76 2009-11-17 11:05:11 -08:00
mail Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
patch Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
project Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
query Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
schema Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
ssh Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
tools Make hooks/commit-msg available over HTTP 2010-01-29 12:48:21 -08:00
util Consolidate windows platform tests to a single class 2009-12-22 16:34:40 -08:00
workflow Move "ref_rights" table into Git 2011-05-19 16:53:03 -07:00
AccessPath.java Require branch deletion permission for pushes over HTTP 2010-01-29 10:29:38 -08:00
AnonymousUser.java Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
ChangeUtil.java Adds a "revert change"-button to a submitted patchset. 2011-05-19 14:23:03 -07:00
CurrentUser.java Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
FileTypeRegistry.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
GerritPersonIdent.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
GerritPersonIdentProvider.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
IdentifiedUser.java Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
MimeUtilFileTypeRegistry.java Fix more rawtype warnings 2011-05-19 09:58:35 -07:00
PeerDaemonUser.java Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
RemotePeer.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
ReplicationUser.java Use AccountGroup.UUID instead of Account.Id 2011-05-19 16:53:03 -07:00
RequestCleanup.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00
UrlEncoded.java Rewrite our build as modular maven components 2009-11-11 16:54:06 -08:00