远程仓库发现有用户执行push操作,就会执行一个脚本post-receive

优采云 发布时间: 2021-05-26 20:38

  远程仓库发现有用户执行push操作,就会执行一个脚本post-receive

  原理与过程

  1、 git用户执行git push操作

  2、如果远程仓库发现用户已执行了推送操作,它将在接收后执行一个脚本(挂接)

  3、在接收后脚本中,将git存储库的代码复制到网站目录中

  1、输入服务器以安装git并建立仓库

  sudo yum install git

cd ~

git init

git init --bare www.xx.com

  两者之间的区别:

  1、普通git存储库的目录结构与您的代码目录结构相同,仅添加.git目录,并且.git目录收录git的一些配置数据

  2、裸仓库仅保存一些配置信息等,并且肉眼找不到我们上传的代码(推荐)

  2、输入网站根目录

  git clone ~/www.xx.com

  网站目录中有仓库的完整代码的副本。

  接下来写钩子文件

  cd ~/www.xx.com/hooks

vim post-receive

  在接收后挂钩文件中写入以下内容

  

#!/bin/sh

unset GIT_DIR

cd /var/www/html/website

git pull

  保存并在编辑后退出。上面的命令意味着将cd转到网站目录,并使用git pull进行更新。稍后,必须将后接收更改为可执行文件:

  chmod 775 post-receive

  3、本地环境将代码提交到服务器

  git clone ssh://git@127.0.0.1:22/~/www.xx.com

git add .

git commit -m=''

git push

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线