在CVM云服务器上,纯净的CentOS 7.5 64位版本,搭建简单的Git共享仓库,实现多用户协作开发
账号密码登录
每个用户拥有独立的账号密码,通过账号密码登录操作Git仓库。方便对用户进行管理,能准确、快速的找到操作文件的用户,但每次操作需输入账号密码,增加了操作Git仓库的复杂度。
1、Git安装
1 | yum install -y git |
2、创建Git用户组
通过Git用户组来管理可操作Git仓库的用户。
1 | 创建git用户组 |
3、禁止Git用户登录服务器
添加的用户默认可以登录服务器,需限制Git用户组用户只能操作Git仓库,不能登录服务器。
1 | 打开/etc/passwd文件 |
4、创建Git仓库
1 | 创建Git仓库目录 |
5、共享Git仓库
仅将仓库操作权限授予Git用户组,可以使得组内用户具备操作仓库的权限,但此时仓库内crazy用户新增或变更的文件,sky用户将不具备写入该文件的权限。这是因为新增文件时默认会给予755权限,而Git变更文件时,会重新新增变更的文件,也就是无论新增还是变更文件,权限都会被改变为755,从而导致用户组权限变为5,组内其他用户仅具备读取、执行文件的操作权限。将Git仓库设置成为共享仓库后,新增文件的权限将会由原来的默认755变成默认775。
1 | 打开/home/git/test.git/config文件 |
6、授权Git用户组
将仓库操作权限授予Git用户组,使得组内用户可以操作仓库。
1 | 修改Git仓库目录及其子文件的权限 |
SSH免密登录
配置好SSH免密登录后,无需输入账号密码即操作Git仓库,提高了操作Git仓库的效率。
注意:权限修改要放在最后进行,修改文件、新增文件可能会改变文件权限和文件所有者,配置完SSH免密登录后仍需输入密码大概率是权限未修改正确。
1、Git安装
1 | yum install -y git |
2、创建Git用户
通过Git用户来管理Git仓库。
1 | 创建用户git添加至git用户组 |
3、禁止Git用户登录服务器
添加的用户默认可以登录服务器,需限制Git用户只能操作Git仓库,不能登录服务器。
1 | 打开/etc/passwd文件 |
4、创建Git仓库
1 | 创建Git仓库目录 |
5、配置SSH
服务器的authorized_keys文件存放客户机的公钥,文件中一行即为一个客户机公钥。采用SSH免密登录方式操作Git仓库时,每个客户机都需要将各自的公钥复制到authorized_keys文件中。
1 | 在客户机生成SSH密钥,默认私钥文件名为id_rsa,公钥文件名为id_rsa.pub |
6、修改权限
将仓库操作权限授予Git用户,使得用户可以操作仓库。家目录及目录下文件权限不能超过755,即只能给予用户自己写权限,权限配置错误将导致SSH免密登录时仍需输入密码。
1 | 授权Git用户 |
学习所得,资料、图片部分来源于网络,如有侵权,请联系本人删除。
才疏学浅,若有错误或不当之处,可批评指正,还请见谅!