安装前提
git安装
gitolite管理git版本权限
下图对gitolite处理介绍
gitolite安装
1.gitolite用户作成
groupadd gitolite
useradd -g gitolite gitolite
id gitolite
uid=2019(gitolite) gid=2019(gitolite) groups=2019(gitolite)
su - gitolite
mkdir .ssh -m 0700
cd .ssh
ssh-keygen -t rsa -P "" -C gitolite@localhost -f gitolite
mv gitolite.pub $HOME
exit
2.gitolite安装
gitolite@localhost
vi /home/gitolite/.bashrc
# git path
export PATH=$PATH:/usr/local/git/bin
cd /tmp
git clone git://github.com/sitaramc/gitolite
mkdir -p $HOME/bin
gitolite/install -to $HOME/bin
cd $HOME
$HOME/bin/gitolite setup -pk gitolite.pub
vi $HOME/.ssh/config
Host localhost
Port 22
User gitolite
Hostname localhost
IdentityFile ~/.ssh/gitolite
IdentitiesOnly yes
TCPKeepAlive yes
cd $HOME/
git clone gitolite@localhost:gitolite-admin
rm -rf $HOME/gitolite.pub
#gitoliteログ
#/home/gitolite/.gitolite/logs
3.gitolite版本访问用户添加
yang@localhost
cd /home/yang/.ssh
ssh-keygen -t rsa -P "" -C yang@localhost -f yang
vi config
Host localhost
Port 22
User gitolite
Hostname localhost
IdentityFile ~/.ssh/yang
IdentitiesOnly yes
TCPKeepAlive yes
chmod 600 config
root@localhost
mv /home/yang/.ssh/yang.pub /home/gitolite/gitolite-admin/keydir
cd /home/gitolite/gitolite-admin/keydir
chown gitolite:gitolite yang.pub
ls -al /home/gitolite/gitolite-admin/keydir/yang.pub
-rw-r--r-- 1 gitolite gitolite 396 Feb 3 18:57 /home/gitolite/gitolite-admin/keydir/yang.pub
gitolite@localhost
cd $HOME/gitolite-admin
git config --global user.email "microad_gitolitee@microad.co.jp"
git config --global user.name "microad_gitolite"
git config --list
vi ./conf/gitolite.conf
repo my-project
RW+ = yang
git add .
git commit -m "add user: yang,add repositorie:my-project"
git push origin master
yang@localhost
git clone gitolite@localhost:my-project
4.git版本导入gitolite版本
gitolite@localhost
cd /home/gitolite/gitolite-admin/conf
vi gitolite.conf
repo "git版本名"
RW+ = @all
cd ..
git add .
git commit -m "add repository:git版本名"
git push origin master
git@localhost
cd /home/git/repositories/<span style="font-family: Arial, Helvetica, sans-serif;">git版本名</span>
git remote add gitolite gitolite@localhost:<span style="font-family: Arial, Helvetica, sans-serif;">git版本名</span>
git remote -v
gitolite gitolite@localhost:<span style="font-family: Arial, Helvetica, sans-serif;">git版本名 </span>(fetch)
gitolite gitolite@localhost:<span style="font-family: Arial, Helvetica, sans-serif;">git版本名</span><span style="font-family: Arial, Helvetica, sans-serif;"> (push)</span>
git push gitolite --all
5.用户访问版本权限设定
gitolite@localhost
cd /home/gitolite/gitolite-admin/conf
vi gitolite.conf
@admin = gitolite
@manager = git
@leader = jenkins
@developer = www
@reader = yang
repo testing
RW+ = @manager
- master$ = @leader
- master$ develop$ = @developer
RW+ = @developer @leader
R = @reader
cd /home/gitolite/gitolite-admin/
git add .
git commit -m "repository adDisplay authority setting"
git push origin master