在服务器上创建git用户和组
groupadd -g gid git useradd -u uid -g gid -d /home/git git passwd git
生成服务器公钥私钥对
ssh-keygen cp id_rsa.pub gitadmin.pub
下载gitolite源码
cd /home/git git clone [email protected]:sitaramc/gitolite.git
查看说明文档
vim README.markdown
创建gitolite安装目录
mkdir -p $HOME/bin
安装
gitolite/install -to $HOME/bin
设置环境变量(CentOS)
vim .bashrc export GITOLITE_HOME=/home/git/ export PATH=$PATH:$GITOLITE_HOME/bin
设置服务器本地为gitolite管理账户
gitolite -to $HOME/bin
这时/home/git目录下就会出现repositores目录
在服务器上clone下gitolite-admin库进行源码库和权限的设置
git clone [email protected]:gitolite-admin.git
添加普通用户
开发人员或其他需访问git源码库的人员在自己使用的电脑上运行
ssh-keygen
将生成的pub文件更改文件名后上传的gitolite-admin库中,pub文件上传至keydir目录下,另外
修改conf目录下的gitolite.conf文件,文件格式如下:
@admin=gitadmin @dev=gitadmin dev01 dev02 dev03 @hudson=hudson01 @third=third01 third02 third03 repo gitolite-admin RW+ [email protected] repo testing RW+ [email protected] repo repoone RW+ [email protected] @admin R [email protected] repo repotwo RW+ [email protected] @admin repo path/.+ C [email protected] RW+ [email protected] @admin R [email protected] repo mail RW+ [email protected] repo dev/.+ C [email protected] RW+ [email protected] R [email protected] repo path1/path2/path3/.+ R [email protected] RW+ [email protected] - master develop V1.0.0 V2.0.0 [email protected]
上面的文件有用户分组、源码库、路径匹配(path1/path2/path3/.+)、分支权限控制(- master develop V1.0.0 V2.0.0)等功能
备注
SSH、SFTP无密码登陆设置
SSH客户端运行ssh-keygen生成公钥后,运行一下命令,将公钥文件发送到远端服务器上去
ssh-copy-id -i ~/.ssh/username.pub [email protected]
时间: 2024-10-11 03:54:01