使用Gitolite搭建Git服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Gitolite搭建Git服务器相关的知识,希望对你有一定的参考价值。
参考技术AGit服务的管理工具,主要有如下几种。
Gitolite 使用perl语言编写,维护和更新比较积极,下面测试使用Gitolite搭建Git服务器。
一般新建用户 ~/.ssh/ 目录是不存在的。
生成路径会在ssh-kengen执行后给出,也可修改。windows下生成路径默认位于 C:/user/用户名/.ssh 下。
此时, gitolite 会初始化两个仓库,同时创建 authorized_keys 文件
管理库中有两个目录, conf/ 和 keydir/ 。
仓库的创建通过编辑 gitolite-admin/conf/gitolite.conf 即可,然后将配置后的文件上传服务器。
若本地已有仓库repo2,将其添加到服务器
gitolite可以通过用户组的方式进行管理
如上提示,需要输入密码。
需要安装 openssh ,并将 gitolite 用户添加在 sshusers 组中,有的服务器可能是 ssh 组。
计算机领域的Cookbook指的是实用经典案例的意思,是对一些普遍性问题的解决方案的总结和整理。
CentOS 7下使用Gitolite搭建Git私服
1. 搭建环境
CentOS7, git version 1.8.3.1
2. 安装依赖包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel -y
3.安装 Git
yum -y install git
4.创建git用户
useradd git passwd git # 输入再次git用户的密码 # 切换到git用户 su git
5.获取Gitolite版本库并安装配置
5.1 获取gitolite
git clone https://github.com/sitaramc/gitolite
5.2 创建bin目录并安装gitolite
mkdir $HOME/bin
gitolite/install -to $HOME/bin
wget http://www.cpan.org/modules/by-module/Data/Data-Dumper-2.154.tar.gz tar xvzf Data-Dumper-2.154.tar.gz cd Data-Dumper-2.121 perl Makefile.PL make make install
6. 配置gitolite管理员
gitolite 使用特殊的版本库gitolite-admin 来管理用户和版本库,所以需要创建一个管理员来管理所有的用户和版本库
6.1 生成公钥
用git用户生成公钥(注:如果你是接着上面一直做下来的,那么只需要输入cd ,然后回车,则就进入了该用户的目录,如果不是git用户,则需要输入su – git,来切换到git用户)
- 配置管理员识别
git config --global user.name "admin" git config --global user.email "[email protected]"
- 生成ssh公钥
cd
ssh-keygen -t rsa
然后一路回车。。。
生成的公钥与私钥在 /home/git/.ssh/ 目录下
6.2 修改.ssh/id_rsa.pub 为admin.pub(为什么要改成admin.pub 因为gitolite根据这个文件名来设立帐号.我这里用admin
cp .ssh/id_rsa.pub admin.pub
6.3 使用管理员公钥安装gitolite(然后去/home/git/repositories 里面,可以看见仓库文件.gitolite-admin.git 和test.git 一个是管理仓库的,一个是测试用)
$HOME/bin/gitolite setup -pk admin.pub
6.4 生成管理员管理仓库(不需要输密码)
git clone [email protected]127.0.0.1:gitolite-admin
进入仓库后可以看到conf 和keydir ,conf/gitolite.conf 是添加用户/仓库的配置, keydir 是放对应用户的公想·x钥.并且此时,admin.pub这个公钥可以删除了
6.5 编辑gitolite.conf
vim gitolite-admin/conf/gitolite.conf
完成如下图:(可以在项目前面添加文件路径)
6.6 分别把添加上去的用户的公钥放到/home/git/gitolite-admin/keydir目录下
6.7 把修改添加提交到版本库
cd /home/git/gitolite-admin git add keydir/test.pub conf/gitolite.conf 添加指定文件 git add . 添加所有文件到git git commit -am "new project and add user" 引号里面是提交说明 git push origin master 第一次要加origin master,以后直接git push即可
6.8 提交完成后,查看管理员仓库多了个刚才新建的版本库
6.9 在客户端面测试连接git版本库
7. 在客户机上安装git程序,右键选择Git Bash
ssh -T [email protected]192.168.30.220.git
到此gitolite安装成功。
参考:https://www.cnblogs.com/ponyliu/p/5383096.html
以上是关于使用Gitolite搭建Git服务器的主要内容,如果未能解决你的问题,请参考以下文章