使用mercurial部署网站

时间:2012-05-28 13:43:11

标签: deployment version-control mercurial bitbucket

我正在为我们最新的项目之一设置开发/部署周期。这是我想要做的,

  1. 将最新代码提交给本地“mercurial”克隆。
  2. 将其推送至“bitbucket”主持的中央仓库
  3. 在我的服务器上打开一些基于Web的管理控制台(这是我需要帮助的部分),该服务器已配置为使用bitbucket repo自动获取最新提交并显示列表。
  4. 选择其中一个修订版并执行有效更新网站的更新。
  5. 如果最新版本存在问题,请使用相同的Web控制台返回上一版本。
  6. 我在第1步和第2步使用“SourceTree”,我希望保持整个循环GUI。任何人都可以建议我可以用于服务器端管理的任何工具(步骤3,4,5)?

2 个答案:

答案 0 :(得分:2)

这比你想象的更简单:

  1. 使用bitbucket作为源

  2. 克隆服务器上的网站
  3. 编写一个小型网络应用,在您网站的根文件夹中调用hg pull -u。 Mercurial记得从哪里拉,所以你在这里不需要任何东西。

  4. 可以使用hg id -i(请参阅this answer)来实现第二个功能,以获取当前版本。将其写入文件。

    现在您需要一个网页,其中列出该文件中的所有修订,并在您点击其中一个时运行hg up -r <revision>

    但也许更好的方法是使用本地仓库中的hg push直接推送到Web服务器(请参阅here)。然后,您可以使用hook更新文件并将最新修订保存到文件中。

    现在,您只需要一个Web服务即可恢复到以前的版本。

答案 1 :(得分:0)

Team City是一款可以为您完成此操作的网络应用。

它是一个持续集成服务器,但可以配置为仅在您使用该应用程序时发布。

有许多持续集成服务器,我想大部分/全部都可以做你想要的,所以如果那个不太适合你的需求那么搜索。

相关问题