2012-01-13 38 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來做它,那麼做這個發佈的開發者可能會選擇不同的選項並使其錯誤。