相比gitosis,gitolite的功能更为强大,支持对权限的细分控制,学习一下在最新版 的ubuntu 14.04 LTS中搭建gitolite服务器是非常有必要的,嘿嘿,一会属于我们自己的GitHub就要出来了!
工具/原料
- Ubuntu 14.04 LTS
- gitolite
方法/步骤
-
首先这里我们安装openssh-server openssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装。
sudo apt-get -y install openssh-server openssh-client
-
安装git,在这个核心软件,不可或缺。
sudo apt-get -y install git
-
添加gitolite用户和同名用户组,加上--system参数,用户就不会在登陆界面显示。
sudo adduser --system --shell /bin/sh --group --disabled-password --home /home/gitolite gitolite
-
生成ssh key,一路回车下来。
ssh-keygen -t rsa
-
将你当前用户的ssh pub key复制到/tmp下备用,由于我用的是桌面版在同一台机器上。
cp ~/.ssh/id_rsa.pub /tmp/ubuntugege.pub
如果你是ssh远程登陆到服务器上安装,就要把你本地的key复制到远程的机器上
scp ~/.ssh/id_rsa.pub gitolite.server:/tmp/ubuntugege.pub
-
安装gitolite,在ubuntu中已经集成了,不用自己去下载。
sudo apt-get -y install gitolite
-
切换到gitolite用户环境中,因为我要以gitolite用户身份去初始化安装。
sudo su - gitolite
-
执行初始化安装gitolite。
gl-setup /tmp/ubuntugege.pub
-
把管理库gitolite-admin克隆过来就可以开始gitolite用户及代码库的管理了,如果不能克隆,那么就说明初始化的ssh pub key错了,如图就是成功了。
git clone ssh://gitolite@localhost/gitolite-admin.git