1、安装git
$ sudo apt-get install git
2、安装gitolite
$ sudo apt-get install gitolite
3、服务器端创建专用账号
安装 Gitolite,首先要在服务器端创建专用帐号,所有用户都通过此帐号访问 Git 库。一般为方便易记,选择 git 作为专用帐号名称。
$ sudo adduser --system --shell /bin/bash --group git
创建用户 git,并设置用户的 shell 为可登录的 shell,如 /bin/bash,同时添加同名的用户组。
有的系统,只允许特定的用户组(如 ssh 用户组)的用户才可以通过 SSH 协议登录,这就需要将新建的 git 用户添加到 ssh 用户组中。
$ sudo adduser git ssh
为 git 用户设置口令。当整个 git 服务配置完成,运行正常后,建议取消 git 的口令,只允许公钥认证。
$ sudo passwd git
4、客户端配置相应的git信息
@1设置本机的git用户信息
$ git config --global user.name "xxx"
$ git config --global user.email xxx@xxx.com@2创建一个ssh公钥/私钥对
$ ssh-keygen @后面选择三个默认选项,如果秘钥已经有了者先删除~/.ssh 目录在重新生成@3上传公钥到服务器
$ scp ~/.ssh/id_rsa.pub git@server(ip):/home/git/username.pub5、服务器端gitolite配置
@1切换到git用户
$ su git@ 2创建一个ssh公钥/私钥对
$ ssh-keygen
@2在git用户目录下运行gitolite安装脚本
$ gl-setup /home/git/username.pub
@3修改配置文件.gitolite.rc
将$REPO_UMASK = 0077 ;改为$REPO_UMASK = 0027
6、管理员客户端设置gitolite
@1获取gitolite管理库
$ git clone git@service:gitolite-admin.git@2编辑gitolite配置文件
gitolite目录下有两个目录文件
├── conf //对用户及项目访问权限进行设置
│ └── gitolite.conf
└── keydir //如果别的用户想要访问git服务器必须将本地的公钥保存到该目录下
├── oxp-edward.pub
└── UTW.pub
@3配置好后push 到git 服务器上
7、gitweb安装和配置
@1安装apache
$ sudo git apt-get install apache2
@2安装gitweb
$ sudo git apt-get install gitweb@3安装gitweb
$ sudo vim /etc/gitweb.conf
修改$projectroot="/home/git/repositories"
@4 重启apache
$ sudo service apache2 restart
@5修改git库读写权限
以git用户登录
$ chmod -R 777 repositories
@6访问git库
在浏览器中通过http://server/gitweb访问git库