下面搭建的git服务器的简易网络拓扑图如下所示:
一、安装及配置所需软件[Git服务器,coffee@workpc1]
git-core是git版本控制核心软件,而且git是通过ssh协议来在服务器与客户端之间传输文件,故openssh-server、openssh-client必不可少。[coffee@workpc1:~$] sudo apt-get install git-core openssh-server openssh-client
初始化git用户信息(内容随便填写,若省略这步操作,后面的git命令无法完成)
[coffee@workpc1:~$] git config --global user.name "coffee"[coffee@workpc1:~$] git config --global user.email "coffee@gmail.com"
下载Gitosis。Gitosis是什么?在这不细说,您只需要知道它是Git权限管理系统即可。
[coffee@workpc1:~$] git clone https://github.com/res0nat0r/gitosis.git
安装python的setuptools。Gitosis的工作依赖于某些Python工具,所以首先要安装Python的setuptools包。
[coffee@workpc1:~$] sudo apt-get install python-setuptools
[coffee@workpc1:~$] cd gitosis/
[coffee@workpc1:~$] sudo python setup.py install
二、在Git服务器上创建git仓库用户[Git服务器,coffee@workpc1]
1. 什么叫git仓库用户?我是这样定义的:一个“用来将管理仓库(gitosis-admin.git)以及所有的git项目仓库存储于它的home空间”的ubuntu用户。git仓库用户并不一定就是git管理员!!这点必须明白。
2. 此处再罗嗦几句。这一步要创建的用户,网上绝大部分文档都取名为“git”。这点我一直没弄明白,为什么非得叫“git”,而不能是“张三”、“李四”,是Git的明文规定吗?非也!为了更好的理解本篇文章以及git服务器的工作原理,我创建的这个具有git属性的用户名字叫做“john”。(我相信这对初学者来说,对理清思路是有帮助的。当然ÿ