2019独角兽企业重金招聘Python工程师标准>>>
Centos6.5用yum命令安装的自带git版本是1.7.1的,在使用中会由于版本过低报错,使用下面的方法正常升级。
1、安装编译所需依赖库
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install gcc perl-ExtUtils-MakeMaker
2、卸载Centos自带的git1.7.1
通过git –version查看系统带的版本,Cento6.5应该自带的是git版本是1.7.1
# yum remove git
3、下载新版本git并编译安装
# wget https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz
# tar zxvf git-2.9.0.tar.gz
# cd git-2.9.0
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
# source /etc/bashrc
4、安装完成查看版本号
# git --version
git version 2.9.0
5、遇到远程clone始终需要输入密码的情况,排查了2天,
最后查到服务端日志 /var/log/secure ,
里面有这种提示:
Mar 9 16:41:22 iZ23pzb4tg2Z sshd[3001]: User git not allowed because shell /usr/bin/git-shell does not exist
Mar 9 16:41:22 iZ23pzb4tg2Z sshd[3002]: input_userauth_request: invalid user git
Mar 9 16:44:16 iZ23pzb4tg2Z sshd[3011]: User git not allowed because shell /usr/bin/git-shell does not exist
Mar 9 16:44:16 iZ23pzb4tg2Z sshd[3012]: input_userauth_request: invalid user git
最后重新设置 /etc/passwd里面git-shell路径就好了
6、生成SSH Key
设置用户名和email
git config --global user.name "zhucaixiang"
git config --global user.email "[email protected]"
生成ssh key
ssh-keygen -t rsa -C "[email protected]"
注意下输出的信息,可以看出.pub在哪个路径
复制里面的信息,粘贴到git的ssh key 中