加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 你如何在远程服务器上进行自动git pull?

发布时间:2020-12-13 13:30:13 所属栏目:PHP教程 来源:网络整理
导读:在我开始之前,我知道有很多类似的问题,但我很难找到一个简洁,安全,最佳的做法,因为对它们的反馈变化如此广泛. 我想做的事: 1)在开发分支上完成本地计算机上的工作. 2)将更改推送到git. Git发布到webhook URL并自动让我的远程服务器在开发站点上提取更改. 3)
在我开始之前,我知道有很多类似的问题,但我很难找到一个简洁,安全,最佳的做法,因为对它们的反馈变化如此广泛.

我想做的事:
1)在开发分支上完成本地计算机上的工作.
2)将更改推送到git. Git发布到webhook URL并自动让我的远程服务器在开发站点上提取更改.
3)在开发站点上进行QA并确认正确后,将主分支推送到生产站点(与开发站点在同一服务器上).

我在哪里:
我在本地计算机和远程服务器上安装了git.我可以将mod推送到开发分支到git.在远程服务器上,我可以提取更新,它就像一个魅力.问题是,当从本地计算机推送更改时,我无法让远程服务器自动更新.

我的问题是:
1)对于远程服务器开发站点目录,我应该git init还是git init –bare?我不打算在服务器上进行更新.我希望我的开发团队在本地工作并将mod推送到服务器.我相信我需要使用git init,因为需要工作树来设置git存储库的远程别名,但我想确认一下.
2)我很确定git问题的webhook帖子是由于用户权限.我怎样才能安全地绕过这个?我已经阅读了许多建议更新git hook文件的教程,但我觉得这比我需要采取的措施更加激烈.我希望能够让webhook点击一个安全拉取文件的URL而不添加大量代码(如果可能的话).

我本质上是一名Web开发人员,所以git和sysadmin任务通常是我存在的祸根.同样,我知道这个问题与其他问题类似,但我还没有找到解决问题的全面,简洁,安全和最合乎逻辑的方法.我大约16个小时,正式点击“没有进展的圈子”点.

非常感谢您的所有帮助!

您可以使用GitHub服务挂钩轻松完成此操作.

您将需要再创建一个文件来处理执行git pull的过程.添加一个名为github.php(或任何你想要的)的新文件,并添加:

<?php `git pull`;

保存该文件,并将其上载到服务器上的存储库目录中.然后,转到服务挂钩 – >接收后URL并将URL复制到该文件,并将其粘贴到“接收后URL”中. http://demo.test.com/myfolder/github.php

因此,当您推送时,GitHub将自动访问此URL,从而导致您的服务器执行git pull.

要了解更多细节,请转到this tutorial

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读