美文网首页
Git系列(三)自动化部署

Git系列(三)自动化部署

作者: 杂货铺学徒 | 来源:发表于2018-03-13 09:51 被阅读17次

对于已经搭建好了的git服务器,现在需要实现在用户push时,将项目自动部署到服务器上,例如将上个教程中的/git/sample.git部署到/public/sample/下,这就要利用git的hooks中的post-receive来实现代码提交完成之后的动作。将仓库指定一个--work-tree然后进行检出操作checkout --force

具体步骤:

新建sample文件夹,并给777权限。

$ cd /public
$ mkdir sample
$ chmod -R 777 sample/

进入/git/sample.git/hooks,并将post-receive.sample复制一份post-receive,并且编写代码如下

# 指定我的代码检出目录
DIR=/public/sample/
git --work-tree=${DIR} clean -fd
# 直接强制检出
git --work-tree=${DIR} checkout --force

保存退出即可。

注意点

  1. 如果我们没有配置ssh免密码登陆的话,我们需要在push代码的时候输入密码
  2. 如果我们添加的远程仓库不是root@xxx.xxx.xx.xx,例如是abc@xx.xx.xx.xx,那么我们要确保abc用户对wx.git目录下的文件有777权限。

由于Git系列(一)Git服务器搭建已经设置了免密登陆,所以大胆push吧

相关文章

网友评论

      本文标题:Git系列(三)自动化部署

      本文链接:https://www.haomeiwen.com/subject/ysvnfftx.html