CentOS7中安装Git

一、可以使用yum进行安装

1、安装git:yum install git

2、查看yum源仓库Git信息:yum info git

3、安装依赖库:yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

                           yum install gcc-c++ perl-ExtUtils-MakeMaker

4、查看git版本,如果默认安装的版本过低,移除默认安装的git

      4.1、查看版本信息:git  --version

      4.2、移除默认安装的git:yum remove git

二、自行下载安装Git

       最新git源码下载地址:

       https://github.com/git/git/releases

       https://www.kernel.org/pub/software/scm/git/

1、下载

      1.1、进入到要下载的目录:cd /opt

      1.2、用wegt命令进行下载:wget https://www.kernel.org/pub/software/scm/git/git-2.25.1.tar.gz

1.3、安装依赖我

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y

2、解压:此处解压到opt目录下

     tar -zxvf soft git-2.25.1.tar.gz

3、安装

     3.1、进入解压后的git目录:cd /opt/git-2.25.1

     3.2、执行make configure

              注意:执行此命令时,开始出错,错误如下:

              configure: Setting lib to 'lib' (the default)

              configure: Will try -pthread then -lpthread to enable POSIX Threads.

              configure: CHECKS for site configuration

              checking for gcc... no

              checking for cc... no

              checking for cl.exe... no

              configure: error: in `/opt/git-2.19.0':

              configure: error: no acceptable C compiler found in $PATH

              See `config.log' for more details  

              解决办法:通过yum providers gcc 和 yum providers cc 查询到c编译器没有安装,可通过执行yum -y install gcc安装gcc包及对应的依赖。

              再次执行make configuer,再次出现错误,错误如下:

              GIT_VERSION = 2.19.2

              GEN configure

              bin/sh:autoconf:未找到命令

              make:***[configure]错误127

              解决办法:通过yum providers autoconf 查询到没有安装autoconf,可通过执行yum -y install autoconf安装包及对应的依赖。

     3.3、配置目录:./configure --prefix=/opt/git-2.25.1

     3.4、执行 make profix=/opt/git-2.25.1

     3.5、执行make install进行安装

4、加入环境变量:echo "export PATH=$PATH:/opt/git-2.25.1/bin" >> /etc/profile

                               source /etc/profile   //使修改的文件生效

5、检查版本:git --version

      如果显示:git version 2.25.1 则证明安装成功!

第二部 创建GIT仓库 并发布到网站目录

我的网站目录在 /opt/wwwroot 下

那我们先开始创建一个空的GIT仓库

cd /opt

mkdir -p gitRes/www.git

cd www.git

git init --bare

那我们仓库地址在/gitRes/www.git 这就是我们仓库地址

编写钩子 使我们提交代码后把代码同步到我们网站目录

cd hooks

2.配置 Git Hook

将目录切换至 /home/USER/repos/xxx-bare.git/hooks,用 cp post-update.sample post-update 复制并重命名文件后 vim post-update 修改,增加执行脚本:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh

unset GIT_DIR 
DIR_ONE=/home/user/www/blog/  #此目录为服务器页面展示目录 
cd $DIR_ONE

git init
git remote add origin ~/repos/xxx-bare.git
git clean -df
git pull origin master

pm2 restart xxx  #pm2重启项目即可

注意: 一定要unset GIT_DIR清除变量, 不然会引起remote: fatal: Not a git repository: ‘.’错误。

下面我们给予这个钩子可执行权限

chmod +x post-receive

3.本地仓库添加 remote 源

本地仓库添加远程仓库源之后,一旦本地仓库变更提交就会触发 Git 钩子,驱动自动部署

1
2
3
4
git init
git remote add origin user@1.2.3.4:/home/USER/repos/xxx-bare.git  #添加远程仓库源
//例如git remote add origin ssh://root@41.72.11.11:26244/home/USER/repos/xxx-bare.git  #远程仓库带端口写法
git push origin master

好了下面回到我们电脑端检出提交下代码试试吧

检出地址为

git clone root@ip:/opt/gitRes/www.git

密码为服务器码为服务器root密码,如果想免密码提交,本地用ssh-keygen生成私钥,公钥配置到Git服务器即可,一般是

~/.ssh/authorized_keys

PS: authorized_keys文件的位置在sshd_config中可配置

vim /etc/ssh/sshd_config

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值