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: *** Error 2
make: *** 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
页:
[1]