服务器安装git遇到了很多坑,最坑自己的就是红字标识的部分,万万没想到网上很多文章写的直接复制粘贴竟然会出问题,后来通过vvv查看登录的详细信息,发现是服务器端找不到匹配的公钥,在segmentfault上提问,有人说可能是复制时公钥含有换行符。
方式一、yum安装
方式一、yum安装
# yum install git
通过yum方式安装,版本比较旧,CentOS6.5上安装好是1.7.1版。如果想安装最新版或其他版本,需要使用源码编译安装的方式。
方式二、源码包安装
步骤1. 安装依赖包
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install gcc perl-ExtUtils-MakeMaker
步骤2. 卸载旧的git版本(如果之前有安装rpm包)
# yum remove git
步骤3. 下载&解压
# cd /usr/src
# wget https://www.kernel.org/pub/software/scm/git/git-2.5.0.tar.gz
# tar -zxvf git-2.5.0.tar.gz
或 # wget https://github.com/git/git/archive/v2.5.0.tar.gz 下载
步骤4. 编译安装
# cd git-2.5.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
步骤5. 检查git版本
# git --version
git version 2.5.0
原文:http://my.oschina.net/antsky/blog/514586
1.用户配置
#创建用户
adduser git
# 进入git用户的home目录 cd /home/git
#切换到git用户
su git
# 新建一个目录,用于存放git的全部仓库 mkdir repositories # 修改该目录的操作权限 chmod 700 ./repositories
cd /home/git/ mkdir .ssh
#设置用户权限 700
chmod 700 .ssh
#在/home/git/.ssh/目录中新建authorized_keys文件
vi authorized_keys
#上传公钥文件(不要复制粘贴,有错误可能)(使用git Bash上传公钥)
cat 公钥文件 | ssh 用户@192.168.1.9 "cat - >> ~/.ssh/authorized_keys"
#查看是否添加成功3
cat /home/git/.ssh/auhorized_keys
#设置用户权限600
chmod 600 .ssh/authorized_keys
4.测试是否设置成功
#使用-vvv命令查看连接详情ssh 用户@xxx.xxx.xxx.xxx -vvv
#假如当前项目目录为/home/git/repositories
git init --bare project_1_web.git
#使用which git-shell 命令获得git-shell的安装路径,再替换掉/bin/bashwhich git-shellvi /etc/passwd
#例如: #注释 ##git:x:500:500::/home/git:/bin/bash #增加 git:x:500:500::/home/git:/usr/local/git/bin/git-shell
vi /etc/ssh/sshd_config #下面3个打开 #1.RSAAuthentication yes #2.PubkeyAuthentication yes #3.AuthorizedKeysFile .ssh/authorized_keys
client
1.生成公钥,并复制到剪切板
ssh-keygen -t rsa
pbcopy < ~/.ssh/id_rsa.pub
此步骤要将公钥发给git服务器管理员
2.在本地新建git仓库
git init
3.新建一个文件并推送到服务器
touch readme.txt
git add readme.txt
git commit -m "readme"
git remote add origin git@xxx.xxx.xxx.xxx:/home/git/project.git
git push origin master
参考:
http://www.netingcn.com/linux-no-password-login.html