2012-01-13 48 views
2

我的公司目前正在实施使用Mercurial和BitBucket的版本控制系统。我们目前已经在bitbucket上设置了存储库并能够使用它们,但是我们的工作流程有点笨拙。我们在.Net中使用Visual Studio进行web编程。目前,我们已经在本地建立了一个克隆库,并从那里开始工作。我们可以使用Visual Studio和VisualHg来做到这一点。设置BitBucket和Mercurial以在组环境中使用

为了编辑文件,我们在Visual Studio中从本地存储库打开它们并进行编辑。然后,我们对Hg进行更改,Hg会根据情况更新存储库。然后,我们需要将文件从我们的本地系统FTP传输到DEV服务器进行测试,然后在QA完成并获得批准后再将FTP传输到生产服务器。

如果我们可以让BitBucket存储库与我们的DEV服务器同步,那么这将有助于简化事情,以便所有需要的都是提交DEV中的测试更改,绕过定位和FTP'ing所有相关文件。

有谁知道这是可能的吗?如果是这样,你可以指点我的任何文档,告诉我如何设置它?我们的开发人员将永远感激。谢谢你的时间。

回答

4

在我看来,使用Mercurial并不是解决这个问题的正确方法。

它不是正确的解决方案的主要原因是,在Mercurial中的文件不是您想要在生产服务器上的文件,因此不是您想要在开发服务器上使用的文件(因为您希望QA环境尽可能接近生产环境)。 Mercurial中没有存储汇编文件(或者不应该存在),这些文件是服务器应该用来运行应用程序的文件。

您可以使用Visual Studio中内置的部署工具来完成此任务。他们可以配置为只需点击一下按钮即可上传所有必需的文件。

Scott Hanselman has a post on his blog关于此。

特洛伊亨特通过引入一个构建服务器this excellent set of posts进一步。它使用Subversion作为存储库,但也可以使用Mercurial来完成。

我更喜欢构建服务器方法,因为只要您将它设置正确,它就会使其100%可靠。每次你要求它进行部署时,它都会做同样的事情。如果你使用Visual Studio来做它,那么做这个发布的开发者可能会选择不同的选项并使其错误。