1、源代码编译新版本git:

yum自带的git版本是1.8.1,比较旧,我比较喜欢新的东西,如是源代码编一个2.11.1的版本。

1)、安装编译工具和依赖:

yum -y install gcc openssl openssl-devel curl curl-devel unzip perl perl-devel expat expat-devel zlib zlib-devel asciidoc xmlto gettext-devel openssh-clients openssh-clients
如果后面拉取https的时候报错,yum -y install git-core gitk git-gui 然后进到这个目录,重新编译一下即可,​

2)、编译git:

cd /mnt
wget ​​​https://www.kernel.org/pub/software/scm/git/git-2.11.1.tar.gz​​​
tar xzf git-2.11.1.tar.gz
cd /mnt/git-2.11.1
./configure –prefix=/usr/local
make && make install

3)、编译好了,查看一下git版本信息:

git –version

git version 2.11.1
[root@izwz91w1soge7j2jt3hhmpz ~]#

2、搭建git服务器:

1)、添加git用户

adduser git password    

注意这里一定要设置,不然后面git clone的时候你都不知道要输入啥,我之前看别人留空,结果我去克隆的时候,提示我输入密码,我直接回车,不行额

2)、先选定一个目录作为Git仓库,假定是/srv/ysp.git,在/srv目录下输入命令:

git init --bare ysp.git
chown -R git:git ysp.git

3)、出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git.

4)、管理公钥

如果团队很小,把每个人的公钥收集起来放到服务器的/home/git/.ssh/authorized_keys文件里就是可行的。如果团队有几百号人,就没法这么玩了,这时,可以用Gitosis来管理公钥。

5)、克隆远程仓库:

现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:

$ git clone git@server:/srv/ysp.git
Cloning into ‘ysp’…
warning: You appear to have cloned an empty repository.