如何使用SVN,Hg或其他方式管理项目部署?

时间:2011-04-15 12:29:14

标签: apache deployment mercurial tortoisehg

我有以下问题,

当我在一个独立项目中工作时,我有一个Mercurial存储库,每当我要部署时,我只是删除服务器中的所有文件并将整个新项目放回那里,这让我遇到了问题,当项目增长时,这个过程真的很难实现。

我的机器背后是代理和防火墙,但我想知道的是如何让这个过程更加“自动化”,比如在服务器上安装Hg存储库并执行 sync's < / em>使用开发PC使用开发PC的Mercurial客户端,可以这样做吗?或者你能建议一个软件来处理类似的问题吗?

为了上下文,我使用Windows作为开发PC的操作系统,服务器是使用Apache2.2和PHP 5.2的Linux服务器(不确定发行版)。

提前致谢,

2 个答案:

答案 0 :(得分:1)

您可以在服务器上设置一个cronjob,每隔5分钟左右克隆一次Mercurial存储库,然后删除.hg文件夹。或者,如果您不介意使用.hg文件夹,可以将存储库设置一次,然后设置cronjob以每隔x分钟更新一次。

答案 1 :(得分:1)

我通过使用bash脚本部署我的个人和小项目(nginx和python),该脚本下载我的最新源代码控制版本,更新网络服务器用作站点位置的第二个repo(hg)(所以我没有处理复制/覆盖和额外文件)并重新启动Web服务器。这很简单,但对我来说效果很好。而不是所有的手动命令更新,复制和重新启动我只需./deploy.sh,我很高兴与hg发送一个很好的变更集更新电子邮件。