Add support for personal mob.user branches
commita81bec6095beba1f2694bbdcbe7ff1215cf9e6e6
authorKyle J. McKay <mackyle@gmail.com>
Tue, 2 Jul 2013 13:36:36 +0000 (2 06:36 -0700)
committerKyle J. McKay <mackyle@gmail.com>
Mon, 22 Jul 2013 18:33:35 +0000 (22 11:33 -0700)
tree8e8c035a391ec33e41273023759ccbcdd3b54d6c
parentabe9554c1bf1699ac0aaea08639310f404458d14
Add support for personal mob.user branches

Actually these refs are stored under '^refs/mob/mob.$user$' and
'^refs/mob/mob_$user/.+$' which means each personal mob user may
use a single ref of the form 'refs/mob/mob.$user' and multiple
refs starting with a 'refs/mob/mob_$user/' prefix.

Personal mob branches are activated simply by adding push
permissions for the mob user to the project.  No initial branch
needs to be pushed (unlike the global 'refs/heads/mob' branch).

These personal mob branches are intended to be mostly invisible to
avoid cluttering up a project with lots of additional branch names
from users without push permission for the project and forcing
everyone to clone them.  This is why they are stored under
'refs/mob/' instead of 'refs/heads/mob/'.

Personal mob branches are completely independent of and do not
interact with the single, global 'refs/heads/mob' branch in any
way.

To facilitate use of these personal mob branches, if they are
enabled (the mob user has push permissions to the project but the
pushing user does not have push permissions to the project), then
'refs/heads/mob*' will automagically map to 'refs/mob/mob*' on a
push making it much simpler to use a personal mob branch.
Girocco/Project.pm
bin/create-personal-mob-area [new file with mode: 0755]
bin/git-http-backend-verify
bin/git-shell-verify
hooks/post-update
hooks/update
html/mob.html
install.sh
jailsetup.sh
taskd/mail.sh