centos git 升级应用

在阿里云服务器上部署Git

升级centos 自带的Git

yum库自带版本为git1.7.1-3.el6_4.1。

-------------------升级------------------------

如已安装GIT先删除

sudo yum remove git

编译安装Git

以前编辑安装过php,所以已安装了编译工具。

参考 http://www.tuicool.com/articles/eYZFFn

1. 下载 git 最新版本的源代码

cd ~
wget -O git.zip https://github.com/git/git/archive/master.zip
unzip git.zip
cd git-master

配置编译安装

autoconf
./configure
make && make install

链接文件到/usr/bin

ln -s /usr/local/bin/git /usr/bin/
git --versio

git version 2.4.0.GIT   (标记:好高的版本,2015年5月7日。)

######################################################

编译安装中出现两次错误

BEGIN failed--compilation aborted at Makefile.PL line 3.

make[1]: *** [perl.mak] Error 2

make: *** [perl/perl.mak] Error 2

--------------下面是解决方法--------------------------------------------------------

执行:

yum install perl-ExtUtils-MakeMaker package

参考:http://wwwlouxuemingcom.blog.163.com/blog/static/209747822014518311337/

###########################################################

如果make的时候报错:/bin/sh: msgfmt: command not found

则需要:

yum install gettext-devel

###########################################################


git应用

初始化git目录

cd /git/
mkdir project.git
git init --bare

创建git用户及证书登录

useradd git    #添加git用户
passwd git   #设置密码
ssh-keygen -t rsa  生成证书
cd /home/git/.ssh
cat id_rsa.pub >authorized_keys   //将公钥加入到authorized_keys
sudo chmod 400 authorized_keys   //保护公钥证书。很重要,因为没有设置。造成登击忽略,提示输密码。

将私钥id_rsa下载到本地电脑

第五步,禁用shell登录:

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

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

改为:

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

手动查一下/usr/bin下面有没有git-shell文件或链接文件。没有可以在 /usr/local/bin里面找

ln -s /usr/local/bin/git-shell /usr/bin/git-shell  #PS  因为没有链接,造成登陆不成功,反复提示密码

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

参考:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000

http://www.cnblogs.com/trying/archive/2013/09/04/3301883.html

代码布置:

http://www.cnblogs.com/iidf/articles/4532126.html

原文地址:https://www.cnblogs.com/linuxOS/p/4484379.html