用Gitolite搭建服务器上的Git

时间:2022-11-18 08:13:47

使用git作为版本控制工具,确实非常流行且好用,常用的git代码服务器有Github还是国内的Gitcafe和OSC都是很不错,可以免费存放一些开源的项目代码,对于私人项目,则需要支付一定的费用。同时对于代码安全隐私的考虑,有时需要搭建自己的私有git服务器,官方wiki有介绍,这里在整理一遍自己的搭建过程,供之后参看。

安装基础依赖包

1
# yum install perl openssh git

添加并切换到git用户

1
2
# useradd git
# su - git

安装gitolite

新建bin目录

1
$ mkdir bin

克隆gitolite程序代码

1
$ git clone ://github.com/sitaramc/gitolite.git

安装程序到./bin目录下

1
$ ./gitolite/install -to /home/git/bin/

当./bin下有可执行文件存在,则说明安装成功

1
2
$ ls ./bin/
commands gitolite gitolite-shell lib syntactic-sugar triggers VERSION VREF

初始化版本库

添加管理员权限公钥,新建公钥文件,名称随意,将本地机器的id_rsa.pub文件中的内容复制到文件中。
大专栏  用Gitolite搭建服务器上的Git

1
2
3
4
本地命令

服务器命令
$ vim admin.pub

初始化新库

1
2
3
4
5
$ ./bin/gitolite setup -pk ./admin.pub 
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/
WARNING: /home/git/.ssh missing; creating a new one
WARNING: /home/git/.ssh/authorized_keys missing; creating a new one

本地代码拉取测试

服务器上初始化代码库之后,会生成两个库

1
2
$ ll repositories/
gitolite-admin.git testing.git

分别是 管理权限配置项目&测试项目

本地执行clone命令

1
git clone git@48.33.66.242:gitolite-admin

如果上面命令成功,则服务搭建完成。

参考地址
http://www.jianshu.com/p/a246d7017f70
http://my.oschina.net/u/818147/blog/170566
http://zodiacg.net/2014/05/gitolite_gitweb_nginx/
http://www.ossxp.com/doc/git/gitolite.html
https://git-scm.com/book/zh/v1/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-Gitolite