下载地址:https://www.kernel.org/pub/software/scm/git/ 下载 git-2.9.5.tar.gz

1、解压

tar xzf git-2.9.5.tar.gz

2、设置安装前缀

cd git-2.9.5 configure --prefix=/usr/local/git -with-tcltk

3、安装

安装依赖:

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-develperl-devel 
//make all 可安装说明文档 
make 
make install 

git --version #检查是否安装成功

如果是首次安装就还需将git 命令执行路径添加到 PATH中

vim /etc/bashrc //末尾加入如下命令 
export PATH=/usr/local/git/bin:$PATH保存退出 
//刷新配置 
source /etc/bashrc 
//重新运行 git --version 
[root@xxxxx-76uzm91p ~]# git --version
git version 2.9.5

 

二、服务器创建git远程仓库

1.创建一个裸仓

git init --bare

2.创建项目仓库(work tree 目录)

cd myProject.git/ git init chown -R git:git myProject.git #分配权限(没有权限再wind端push代码可能会遇到权限问题)

*接下来我们 创建一个git用户组和用户,用来运行git服务:

$ groupadd git 

$ useradd git -g git 

$ passwd ****** 

passwd git "密码" # 修改git用户的密码

3.配置远程仓库地址

git remote add origin git@192.168.10.110:/home/git/myProject.git 
#查看是否添加成功 
git remote -v

4.从远程仓库clone 到本地。

git clone git@192.168.10.110:/home/git/myProject.git

5.测试提交可能会遇到需要设置denyCurrentBranch 的错误提示

到服务器端.修改work tree 下 .git/config 文件。末尾添加

[receive] 
denyCurrentBranch = ignore

或者直接执行

git config receive.denyCurrentBranch ignore

6.服务器查看提交的文件

#刷新提交
git reset --hard

 

三、配置ssh 访问方式

1.切换至root 用户

su root 
cd /etc/ssh 
vim sshd_config

解开下面三行注释

RSAAuthentication yes 
PubkeyAuthentication yes 
AuthorizedKeysFile .ssh/authorized_keys

保存重启sshd服务

/etc/rc.d/init.d/sshd restart(或则 systemctl restart sshd)

上面看到 身份认证文件要放到.ssh目录下

2.创建身份认证文件并添加公钥

进入git 用户根目录创建 .ssh 文件夹及 authorized_keys文件

cd /home/git 
mkdir .ssh 
cd .ssh 
touch authorized_keys 
vim authorized_keys //将公钥添加至文件末尾 保存退出

3.使用root 用户 开启ssh 访问,并拒绝使用ssh 直接登陆进服务器

vim /etc/passwd

找到

git:x:1001:1002::/home/git:/bin/git-shell

修改为git 软件安装目录下的shell命令路径

git:x:1001:1002::/home/git:/usr/local/git/bin/git-shell

重新在客户端commit push 就不用输入密码了。