首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mercurial部署

Mercurial部署
EN

Stack Overflow用户
提问于 2011-08-10 00:33:52
回答 2查看 329关注 0票数 0

我对mercurial还很陌生,所以这听起来可能很傻..

我正在本地开发一个PHP应用程序,并将更改推送到远程linux服务器。我有一个发布我的存储库的hgweb.wsgi脚本,可以通过url (hg.example.com/ repository )访问。

现在我想知道什么是自动部署应用程序的最佳方法,以便在与存储库相同的服务器上查看它的运行情况?显然,我不能只转到hg.example.com/repository,因为它只显示存储库的web界面,而不是应用程序。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-10 06:31:35

你混淆了两件不一定相关的事情:

  • 存储库URL的路径部分,
  • 服务器上实际存储库的路径。

为了更好地了解情况,请考虑我们使用SSH而不是HTTP来访问存储库。这意味着我们可能会在路径中指定服务器文件系统中存储库的完整路径,例如,为了在类似的设置中与我的服务器同步,我推送到ssh://example.com//var/www/wsgi/example.com (我有一个WSGI应用程序,而不是PHP应用程序,但现在这并不重要)。应用程序本身可以在http://example.com/上获得,如果是/var/www/wsgi/example.com,则为站点根目录。

现在,没有什么可以阻止我使用hgweb在hg.example.com子域上设置对这个存储库的访问,所以存储库推送路径是http://hg.example.com/example.com

因此:

  • I push to http://hg.example.com/example.com (按此URL发出存储库)
  • 存储库位于/var/www/wsgi/example.com (服务器文件系统路径)下
  • 此目录以某种方式设置为站点根目录,由web服务器

<代码>H120站点根目录=web

P.S.别忘了前面提到的changegroup钩子。

票数 1
EN

Stack Overflow用户

发布于 2011-08-10 05:45:20

你需要做两件事:

  1. 添加一个可以提供PHP页面的let服务器(如apache),并让它服务于存储库根目录(始终确保它是保存的)
  2. 为changegroup钩子添加一个钩子到mercurial服务器。这个钩子可以很简单: update.changegroup = hg up

这将使用最新版本更新存储库的工作文件夹。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6999608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档