centos7下搭建git服务器
2017-06-28 本文已影响1851人
李亚楠0219
删除老版本Git
yum remove git
安装新版Git
--安装gcc
yum install gcc
--安装g++
yum install gcc-c++
--安装编译所需的包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install gcc perl-ExtUtils-MakeMaker
wget -P /usr/src/git-2.12.2 https://www.kernel.org/pub/software/scm/git/git-2.12.2.tar.gz
--切换到指定目录
cd /usr/src/git-2.12.2/
--解压源码包
tar zxvf git-2.12.2.tar.gz
--进入解压目录
cd git-2.12.2/
--配置安装目录并编译和安装
./configure --prefix=/usr/local/git-2.12.2 && make install
--将编译好的git-2.12.2 bin目录添加到bashrc中,相当于添加全局变量
echo 'export PATH=$PATH:/usr/local/git-2.12.2/bin' > /etc/profile.d/git.sh
--使bashrc立即生效,全局变量立即生效
source /etc/bashrc
--查看git版本
git --version
--将git设置为默认路径,不然后面克隆时会报错
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
至此,CentOS 就安装上了最新版本的 Git。
创建一个git用户组和用户,用来运行git服务
$ groupadd git
$ useradd git -g git
$ passwd git #参数是用户名
最好切换到git用户 不然后面新建的git仓库都要改权限 烦烦烦!!
$ su - git
创建证书登录
mkdir /home/git/.ssh
chmod 700 .ssh
cd /home/git/.ssh
ssh-keygen -t rsa //默认会生成~/.ssh/id_rsa.pub公钥文件。
初始化完出现3个文件
authorized_keys
id_rsa
id_rsa.pub
chmod 600 authorized_keys
vim authorized_keys
把你客户端生成的公钥复制进去就OK了
初始化Git仓库
$ cd /home/git
$ git init --bare test.git
Initialized empty Git repository in /home/git/test.git/
以上命令会创建一个空仓库,服务器上的Git仓库通常都以.git结尾。
本地克隆仓库
$ git clone git@your-ip:test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
your-ip 为您 Git 所在服务器 ip