是否需要Central Mercurial回购?

时间:2013-05-06 16:27:41

标签: mercurial

在我们实施之前,尝试在Coldfusion商店中为多个开发人员找到可行的工作流程。

目前,我们大多数人(仍然)直接在生产中工作。我想改变它。

如果每个开发人员都拥有自己的仓库,并且测试和prod Web服务器上有回购,那么“中央”存储库中的价值是多少? BitBucket在这种情况下会增加什么价值呢?

4 个答案:

答案 0 :(得分:0)

如果您使用中央存储库,则可以将开发放入dev分支,并将生产分支仅用于错误修正。另外,我认为在生产环境中运行mercurial repo是个坏主意。考虑将生产服务器与存储库分离的常规部署策略。

但我必须承认,我没有Coldfusion的经验,也许直接从存储库运行是完全可以的。

答案 1 :(得分:0)

bitbucket的主要优点是缺乏服务器设置/维护/备份,您可以在任何可以访问互联网的地方访问它。

@luksch直接质疑从克隆的回购中运行prod是正确的。您至少要确保没有提供.hg目录。我鼓励你使用某种部署脚本来获取mercurial包中的标签源,将它放在repo上,然后重新启动或执行CF服务器所需的任何操作。

我使用冷融合的最佳体验(就像我有一个最好的根管)就是当我们放弃adobe的服务器并使用railo时,这使我们免于为所有服务器上的许可证支付adobe因为它可以轻松打包应用程序,并且它可以在战争中运行 - 从而使部署变得非常容易。

答案 2 :(得分:0)

在BitBucket或您公司的服务器上托管的中央仓库(假设它们受到物理保护和备份)为您提供了可靠的可用性和业务连续性的优势,以防万一发生非常糟糕的事情。

如果其中一个硬盘驱动器崩溃,则存储库的多个副本都很好。但是,如果火灾或盗窃消除了所有带有回购的硬盘驱动器(我已经阅读了一例这种情况),它就什么都没有了。

答案 3 :(得分:0)

分布式版本控制的最佳之处在于它允许您围绕自己的开发过程设计工作流程。您不需要中央存储库,但许多项目最终使用一个。

中央存储库是跟踪代码库最新版本的好方法。这意味着,当开发人员希望获得最新代码的副本时,他们总是知道从哪里拉/克隆,而不必询问团队。

拥有中央存储库不会以任何方式限制您,您仍然可以使用其他工作流程。例如,如果团队中的一些成员正在开发一个功能,他们可以在他们的开发存储库之间推送和拉动,而无需推送到中央存储库。