Gitolite
From Attie's Wiki
(Difference between revisions)
m (→As ${USER}) |
m (→As ${USER}) |
||
Line 40: | Line 40: | ||
# releases must be made by internal developers | # releases must be made by internal developers | ||
#repo therepo | #repo therepo | ||
− | # | + | # RW = @internal |
# - release$ = @external | # - release$ = @external | ||
− | # | + | # RW = @external |
EOF | EOF | ||
</source> | </source> |
Revision as of 11:45, 14 February 2014
Note: This procedure was carried out on a Debian server
Useful Links
http://gitolite.com/gitolite/qi.html
As root
apt-get install gitolite useradd -rmd /var/lib/gitolite git cp ~${USER}/.ssh/id_rsa.pub /tmp/${USER}.pub chown git:git /tmp/${USER}.pub sudo -u git gl-setup /tmp/${USER}.pub rm /tmp/${USER}.pub
As ${USER}
git clone git@localhost:gitolite-admin.git cd gitolite-admin cat <<EOF >conf/gitolite.conf @root = attie @internal = attie @external = repo gitolite-admin RW+ = @root # this should be at the top # let root users force push # let all internal developers read all repositories repo @all RW+ = @root R = @internal repo testing RW+ = @all # template: # this will prevent external/3rd party developers from merging or writing to the release branch # releases must be made by internal developers #repo therepo # RW = @internal # - release$ = @external # RW = @external EOF