理解本文的条件:
1,基本的运维基础
2,能够自行安装git,gitolite(gitolite github地址 https://github.com/sitaramc/gitolite/)
git 高效安全的 workflow 避免不了对分支的精准权限控制,所以放弃 gitosis 的权限控制采用 gitolite
在这我只会阐述,我在安装维护过程中的问题和体会,具体安装过程资料已经比较多了
1,安装前准备
客户端:
1) ssh-keygen 生成默认 公钥私钥 id_rsa,id_rsa.pub
2) 服务端 生成帐号 git
3) ssh-copy-id -i ~/.ssh/id_rsa.pub git@server 第一次会求证输入密码,以后在采用 ssh 登录服务器时不用再频繁输入密码而采用密钥进行验证登录
此时通过 ssh git@server 时 登录服务器时,使用的是系统默认 bash shell 进行服务器管理
4)采用ssh-keygen 再生成一对密钥 用于git管理 生成的密钥对在这命名为 mygit
5) scp ~/.ssh/mygit.pub git@server:/home/git/.ssh/ (注此处千万不可重复第三步,此处公钥用户管理git而非进行服务器管理)
6)配置ssh 别名 vim ~/.ssh/config
添加
1 host gitolite
2 user git
3 hostname server
4 port 22
5 identityfile ~/.ssh/mygit
ssh gitolite 可看到系统会打印 gitolite 信息后立马退出
2,安装过程
1,安装git gitolite 可采yum 或 apt-get install 或源码安装
2,在服务端gitolite 安装最后一部添加 公钥时,采用上传的mygit.pub
3,安装完毕进行管理
clone gitolite-admin 进行管理
gitolite 安装完毕之后 会在 /home/git/repositories/ 目录下生成 gitolite-admin.git 仓储
注意此处,我们需要用 git clone gitolite:gitolite-admin 克隆 管理员仓储
而非 git clone git@server:git@115.28.35.186:/home/git/repositories/gitolite-admin.git
后面的具体权限维护相信理解起来不会产生疑惑,网上资料也很多,在这不再重复了
在网上查阅了一些资料,进行安装维护时总感觉阅读起来不是那么清晰,总会产生疑惑,在这把流程梳理一遍,希望能够帮助到看到本文同学