gitosis使用笔记

gitosis是Git下的权限管理工具,通过一个特殊的仓库(gitosis-admin.git)对Git权限进行管理。
1:服务端安装并配置gitosis
(1)通过以下方式获取到安装包
root@wz:/home/git# git clone https://github.com/res0nat0r/gitosis
(2)使用python进行安装
root@wz:/home/git# python gitosis/setup.py install
(3)将authorized_keys移除或重新命名为authorized_keys.bak,Gitosis 将为我们管理公钥,后再重新添加公钥,并且让 Gitosis 自动控制authorized_keys文件。
root@wz:/home/git/.ssh# pwd
/home/git/.ssh
(4)将之前的git用户bash登陆设置修改过来
vim /etc/passwd
46 git:x:1002:1002:,,,:/home/git:/bin/bash
(5)初始化 Gitosis ,需要通过自己的公钥来运行gitosis-init,首先将我本地的公钥复制到服务端:
y@y:git scp/home/y/.ssh/idrsa.pubwzh@192.168.0.143:tmp/wzh@192.168.0.143spassword:idrsa.pub100y@y:git s c p / h o m e / y / . s s h / i d r s a . p u b w z h @ 192.168.0.143 : t m p / w z h @ 192.168.0.143 ′ s p a s s w o r d : i d r s a . p u b 100 y @ y : g i t
服务端执行以下操作:注意不是在超级管理员用户下的:
wzh@wz:/home/git$ sudo -H -u git gitosis-init < ~/tmp/id_rsa.pub
这样该公钥的拥有者就能修改包含着 Gitosis 设置的那个 Git 仓库了。
此时目录结构如下:
这里写图片描述
同时.ssh下面会生成一个:authorized_keys文件
这里写图片描述
由gitosis管理的仓库放在:repositories/目录下面
此时在repositories/目录下面初始化一个空的仓库:
这里写图片描述
2:客户端操作gitosis
(1)现在可以试一下用初始化 Gitosis 公钥的拥有者身份 SSH 进服务器:
这里写图片描述
说明 Gitosis 认出了该用户的身份,但由于没有运行任何 Git 命令所以它切断了连接。
(2)克隆 Gitosis 的控制仓库到本地:
这里写图片描述
注意:IP后面直接跟仓库的名称,无需路径,gitosis-admin.git在服务端的repositories/目录下面。
gitosis-admin目录结构如下:
这里写图片描述
gitosis.conf文件是用来设置用户、仓库和权限的控制文件。
keydir 目录则是保存所有具有访问权限用户公钥的地方每人一个。
(3)修改 gitosis.conf配置文件并同步到服务端:其操作方式与普通的Git仓库一致,
这里写图片描述
提交到服务端之后,查看服务端:
这里写图片描述
(4)如果是多人协助开发同用一个版本库,则需要将他们每个人的公钥文件添加到keydir文件夹然后push到服务端。
这里写图片描述
文件的命名将决定在gitosis.conf配置文件中的称呼。
例如:参考《ProGit》
现在我们为 John,Josie 和 Jessica 添加公钥:
cp/tmp/idrsa.john.pubkeydir/john.pub c p / t m p / i d r s a . j o h n . p u b k e y d i r / j o h n . p u b cp /tmp/id_rsa.josie.pub keydir/josie.pub
$ cp /tmp/id_rsa.jessica.pub keydir/jessica.pub
然后把他们都加进 ‘mobile’ 团队,让他们对iphone_project具有读写权限:
[group mobile]
writable = iphone_project
members = scott john josie jessica
Gitosis 。也具有简单的访问控制功能如果想让 John 只有读权限,可以这样做:
[group mobile]
writable = iphone_project
members = scott josie jessica
[group mobile_ro]
readonly = iphone_project
members = john
现在 John 可以克隆和获取更新,但 Gitosis 不会允许他向项目推送任何内容。

错误汇总
https://blog.csdn.net/Suo_ivy/article/details/79941323
https://blog.csdn.net/wirelessqa/article/details/20152353

Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值