在CentOS下搭建git服务

建议

按照下面的步骤一步一步来,已经做过的步骤可以直接跳过。

安装git和gitolite3

1.安装git
yum -y install git
2.安装gitolite3
yum -y install gitolite3

配置

1.生成ssh key
ssh-keygen -t rsa -C "youremail@example.com"
2.上传生成的id_rsa.pub文件

将生成的id_rsa.pub(在电脑当前用户的.ssh目录下),上到你的服务器。简单提一下怎么把公钥上传到服务器,最简单的办法就是拷贝公钥里面的内容,然后在服务器新建一个文件,把内容复制进去。
把公钥名字改成admin.pub

mv id_rsa.pub admin.pub
3.将admin.pub复制到gitolite3用户家目录

yum方式安装gitolite3会默认生成一个用户,在/var/lib/gitolite3/

cp admin.pub /var/lib/gitolite3/

修改admin.pub的权限

chown gitolite3:gitolite3 -R /var/lib/gitolite3/admin.pub
4.设置管理员

切换到gitolite3用户

su - gitolite3

设置管理员公钥

gitolite setup -pk admin.pub

使用

确保本地的id_rsa.pub和admin.pub里面的内容一样,将gitolite-admin拉到本地

git clone gitolite3@192.168.1.110:gitolite-admin.git

gitolite-admin里面的conf文件夹里存放的是仓库和权限配置,keydir存放的是成员的公钥。

repo gitolite-admin
    RW+     =   admin
repo testing
    RW+     =   @all
如何创建自己的仓库

1.进入gitolite3的家目录即/var/lib/gitolite3,进入repositories目录

cd /var/lib/gitolite3/repositories

创建空的git项目

git init --bare ios.git
如何配置权限

1.打开gitolite-admin里面的conf文件夹,用编辑器打开gitolite.conf

@iosdevelopers = dev1 dev2 dev3  //用户分组
repo gitolite-admin
    RW+     =   admin
repo testing
    RW+     =   @all
repo ios  
    RW+     =   @iosdevelopers // 整个组都有读写的权限

2.将对应成员的公钥按照配置里面的名字命名,如dev1.pub,dev2.pub,dev3.pub。然后把公钥放入keydir里面
3.提交管理仓库

git add -A
git commit -m '新增iOS成员'
git push

4.测试

git clone gitolite3@192.168.1.110:ios.git
如何修改管理员的公钥

将新的管理员的公钥上传到服务器

gitolite setup -pk admin.pub
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一.部署环境 系统:CentOS 6.4x64 最小化安装 IP:192.168.52.131 git默认使用SS...
    madfrog_hc阅读 5,151评论 0 0
  • gitosis: 把所有用户的公钥保存在 authorized_keys 文件的做法,只能凑和一阵子,当用户数量达...
    晓蜻蜓阅读 11,129评论 2 2
  • Git的基本工作流程 在工作目录中修改某些文件。 对修改后的文件进行快照,然后保存到暂存区域。 提交更新,将保存在...
    夜_雪阅读 5,102评论 2 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,306评论 19 139
  • 春意散尽, 归何处? 翠桦余目, 娇花相争, 美哉,美哉!
    唐糖兮阅读 1,670评论 0 0