2013-02-15 78 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?!”)

相关问题