2013-02-15 123 views
0

在另一個項目中使用一個mercurial項目的最佳做法是什麼?我有一個我正在開發的django應用程序,但我也使用mercurial來控制使用該應用程序的網站。我看過mercurial subrepositories,但顯然這被認爲是「最後的手段」。有什麼方法可以做我想做的事情,或者當我想更新到我的應用程序的新版本時,是否必須將我的應用程序中的代碼複製到我的網站庫中?在另一個項目中使用一個mercurial項目的最佳做法

回答

1

在特定情況下,我喜歡讓pip處理我的Django應用程序的依賴關係:http://guide.python-distribute.org/pip.html#installing-from-a-vcs

我們已經在我們的「網站」回購一requirements.txt和我們的部署做了pip install --upgrade -r requirements.txt這是直接從回購最新installes它到應用程序的虛擬環境中。這給了很好的靈活性和分離性,同時使包管理達到點數。如果您希望不同的網站使用來自同一底層回購庫的不同修訂版,那麼通過點擊這些VCS網址,您也可以指向特定的標籤或分支。

pip也有一個-e /path/to/file模式指向一個「可編輯」的克隆,這是在網站回購之外,這也可以工作,但我沒有嘗試過。

也就是說,如果您認爲subrepos更適合您的工作流程,請儘量使用它們。他們工作得很好,但人們經常掛上工作流的限制(「你是什麼意思,我不能提交我的父母回購W/O也承諾在subrepo?!」)

相關問題