使用Git可以自动部署到具有两个分支的两个主机



是否可以使用git:实现以下自动化web部署

服务器:

  • GIT Repo,带有一个master和一个dev分支
  • 托管dev.mysite.com(dev分支)
  • 托管mysite.com(主分支)

基本上,我想在本地机器上进行开发,然后提交给dev分支,在实际服务器环境中测试更改。如果一切都经过测试,我将把开发提交合并到主/实时站点中。提交/合并应自动将文件复制到文档根目录中。

我看过很多关于posthook的教程,但我对Git还很陌生,真的不知道如何实现这一点。

其他信息

主机是沙盒的,并且分配给主机的用户(dev.mysite.com&mysite.com)不能访问其他主机的文件。阅读:一切可能都应该通过git挂钩来实现,因为我无法将文件移动到其他主机的目录中。此外,我不想手动ssh到服务器中,将更改拉到相应的主机中,因为我不是唯一一个开发人员,而是唯一一个可以访问ssh的开发人员,我不希望每5分钟被调用一次来拉新的更改。

这是完全可能的:

详细解释见http://toroid.org/ams/git-website-howto

对您来说,您需要在服务器git存储库上有一个接收后挂钩,它看起来有点像(伪脚本):

#/bin/bash
如果推送是分支dev/
GIT_WORK_TREE=/var/www/dev.mysite.com GIT checkout-f
退出
否则,如果推送到分支主机
GIT_WORK_TREE=/var/www/mysite.com GIT checkout-f

这可能会得到你想要的!:)

希望它能有所帮助!

相关内容

  • 没有找到相关文章

最新更新