安装Git服务&使用Gitosis管理成员、项目并做项目授权(下)
2、从 Gitosis 项目主页克隆并安装
有可能你clone不成功,报socket连接失败
那么,你可以去Github项目主页克隆
可是,克隆Github主页也报错,这时需要在你的机器上使用ssh-keygen
命令生成公钥与私钥,然后发布到Github上去。
将生成的公钥发布到Github(你得有个Github账号呀)上。
添加成功后的效果
再次克隆没有问题
安装几个供 Gitosis 使用的工具
3、初始化Gitosis
创建用于管理我们的Gitosis项目的用户(Github主页有关于这块的介绍,不同的Linux版本创建用户是不一样的)
切换到ROOT用户,然后添加git用户
初始化Gitosis。这里需要注意,管理我们的Gitosis项目需要有一个管理员,而这个管理员是需要把自己的SSH公钥发布到这台服务器上的。比如,我把自己的Mac用户的公钥上传到服务器。
初始化Gitosis。注意Gitosis项目主页描述的和我们实际执行的有些区别。
初始化成功后,就可以安装管理我们的项目咯。比如,我用Mac用户先克隆Gitosis项目
这就是Gitosis的项目管理员:chenghuiyong
4、配置Gitosis
我们继续增加一个项目,成员还是我自己,允许读写。
推送到远程仓库中。
配置文件中,我们已经新增了一个项目:api.chehubao.com,现在需要做是在本地创建一个api.chehubao.com目录,初始化该项目,然后与远程仓库关联,在推送到远程(这里推送时要注意,本地仓库里面一定要有内容才能推送成功 ,而Pro Git 这本书里面是错误的)
推送到远程仓库,如果远程没有它默认会自动创建该仓库。
登陆到服务器,查看是否创建了该项目
至此,Git服务器搭建与项目、权限、用户管理已经结束。在写这篇文章前,我自己是查了很多资料,实践了多次,也遇到了非常多的困难。网上的资料总是不完整的,最后对比了不同的资料与官方的文档,总结了这篇博文。
我们现在公司的项目也全部基于Git,使用Gitosis授权。同时,我们也不断在积累Git-Flow的经验心得,接下来,我会根据实际项目的操作经验,分享一篇关于如何高效的在团队中使用Git-Flow流程进行项目开发的博文,如果你喜欢请在我的博客中关注我:www.chenghuiyong.com