ubuntu14.04/Mint17上Gitolite的搭建过程
ubuntu14.04/Mint17上Gitolite的搭建过程
大培哥 发表于2年前
ubuntu14.04/Mint17上Gitolite的搭建过程
  • 发表于 2年前
  • 阅读 597
  • 收藏 3
  • 点赞 0
  • 评论 0
摘要: 最近已经好几天没记录工作中做的事情了,今天就简单的描述一下gitolite的搭建过程,等有空再简单介绍一下服务器迁移gitolite数据的过程。

    一、安装git

服务器端

 sudo apt-get install git-core

 

二、在服务器端安装gitolite服务器

 sudo apt-get install gitolite

    Gitolite通过git来管理它的配置文件,我们将要创建一个操作系统的用户,唯一的目的就是为了让其和gitolite进行交流。该系统用户被叫做git.

 sudo adduser --system --group --shell /bin/bash --disabled-password git

    三、为git管理员配置sshkey

    拷贝ssh key到gitolite服务器。例如:

scp ~/.ssh/id_rsa.pub regular_username@git_server_IP_address:/tmp/git-admin.pub

四、配置gitolite

        以下的步骤同样发生在服务器端,我们可以在git用户身份下用刚才拷贝过来的公钥来初始化gitolite 。

#切换git用户身份
sudo su - git  

#使用刚刚传输的公钥初始化gitolite,敲击enter完成设置
gl-setup /tmp/git-admin.pub

五、如何管理gitolite

    回到本地的pc,你可以开始管理gitolite服务器了。

    先确认你本地是否安装git,如果未安装,执行以下步骤,否则跳过该步骤;

 sudo apt-get install git-core

    接下来我们来克隆一下gitolite的配置信息到本地。

git clone git@git_server_IP_address:gitolite-admin

提示:执行该命令以后将会创建一个gitolite-admin的目录.

六、添加新用户到gitolite服务器上

        在本地机器上我们可以进入一下刚刚的gitolite-admin目录,在目录下面我们会看到如下目录:

                                                 conf                          keydir    

提示:通常情况来讲,keydir下面存放的是用户的pub key.

你可以做如下操作将新用户的pub key 拷贝到keydir目录下:

git clone git@git_server_IP_address:gitolite-admin

你需要按git操作的一系列步骤来将pub key上传到gitolite服务器上面:

#配置一下git的基本用户信息
git config --global user.name "your_name_here"
git config --global user.email "your_email@address.com" 

#添加文件到git
git add keydir/john.pub

#提交变动
git commit -m "str you want to add"

#提交变动到gitolite服务器
git push

七、配置gitolite的访问控制权限

在上一段你提交pub的时候可能会出现以下的问题,警告如下:

        这就意味着服务器知道有john这位用户,但是在配置文件中没有设置john的访问权限。现在就可以做一些简单的配置来使John这个用户具备对某个目录的访问控制权限.

打开gitolite-admin目录下conf中的gitolite.conf,做一些配置如下:

        再执行同上一步骤的git 提交操作,将gitolite.conf里面的改动内容上传到服务器处。上传成功后,就可以采用以下方式来下载项目仓库:

git clone git@git_server_IP_address:johnsproject

提示:gitolite.conf的基本配置格式可以查看https://www.digitalocean.com/community/tutorials/how-to-use-gitolite-to-control-access-to-a-git-server-on-an-ubuntu-12-04-vps

八、总结

    如果你正在管理多个组的项目仓库,你最好可以设置对应的仓库到一个用户组,这样也很容易去管理。

共有 人打赏支持
粉丝 6
博文 25
码字总数 29783
×
大培哥
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: