成都创新互联网站制作重庆分公司

Git配置(三)使用gitolite控制权限

1、切换git用户

成都创新互联公司公司2013年成立,是专业互联网技术服务公司,拥有项目成都网站建设、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元安康做网站,已为上家服务,为安康各地企业和个人服务,联系电话:18980820575

su - git

2、获取gitolite,不能到github下载tar或zip包解压,缺少.git目录,安装时获取不到版本

git clone https://github.com/sitaramc/gitolite

可能会现如下错误
Unable to find remote helper for 'https'
需要再环境变量中增加/usr/libexec/git-core配置
切换root用户

vim /etc/profile

修改最后一行

export PATH="/usr/local/git/bin:/usr/libexec/git-core:$PATH"

执行source命令

source /etc/profile

切换回git用户

还可能会出现如下错误
Git配置(三)使用gitolite控制权限
需要更新以下库

yum update -y nss curl libcurl

3、安装gitolite

mkdir $HOME/bin
gitolite/install -to $HOME/bin
cd bin/

可以按照以下内容
Git配置(三)使用gitolite控制权限
4、配置管理员

ssh-keygen -t rsa

一路回车
Git配置(三)使用gitolite控制权限
5、修改公钥名称(这里起名为admin,后续再gitolite中配权限对admin进行配就行了,代表本机)

cd $HOME
mv .ssh/id_rsa.pub admin.pub
$HOME/bin/gitolite setup -pk admin.pub

Git配置(三)使用gitolite控制权限
6、生成管理员仓库(后续对权限、项目的配置就在这个仓库配置,配置后push即可)

git clone git@127.0.0.1:gitolite-admin
cd gitolite-admin

Git配置(三)使用gitolite控制权限
7、配置gitolite-admin

vim gitolite-admin/conf/gitolite.conf

Git配置(三)使用gitolite控制权限

新建一个project项目
定义两个用户组: admin 和 user
用户admin 对 有(读 写 删除)RW+ 权限
user组对project 有 (读 写)RW 权限

8、提交修改

git add .
git commit -am "add project"

可能会出现下面错误,需要设置一下email和name
Git配置(三)使用gitolite控制权限

git config --global user.email "xxxx@xxxx.com"
git config --global user.name "xxxx"

再次提交

git commit -am "add project"
git push origin master

Git配置(三)使用gitolite控制权限
提交完后,可以看到多了project目录
Git配置(三)使用gitolite控制权限

9、客户端访问
在客户机要下载的目录右键打开Git Bash,输入

ssh-keygen -t rsa

一路回车,在用户目录下的.ssh会生成id_rsa.pub公钥,上传公钥至gitolite-admin的keydir目录下,修改id_rsa.pub为test(根据实际情况修改)

mv id_rsa.pub test

修改gitolite.conf文件增加test用户对project项目的访问权限

vim gitolite-admin/conf/gitolite.conf

Git配置(三)使用gitolite控制权限
提交到版本库

git add .
git commit -am "add auth to test for project"
git push origin master

在windown的Git Bash输入以下命令,下载project项目

git clone git@xxx.xxx.xxx.xxx:/project.git

分享文章:Git配置(三)使用gitolite控制权限
文章出自:http://cxhlcq.com/article/pihdse.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部