Python多项目构建

时间:2015-10-26 23:13:31

标签: python build dependencies

我正在将整体项目代码库分成几个较小的项目。我很难理解如何正确处理不同项目之间的依赖关系。

结构看起来像这样:

SCM_ROOT
|-- core
|   |-- src
|   `-- setup.py
|-- project1
|   |-- src
|   `-- setup.py
|-- project2
|   |-- src
|   `-- setup.py
`-- project3
    |-- src
    `-- setup.py

处理多包项目之间的依赖关系以及设置开发环境的推荐方法是什么?我使用的是pip,virtualenv和requirements.txt文件。是否有任何工具可以让我快速从存储库引导我的环境?

1 个答案:

答案 0 :(得分:1)

使用像Pybuilder或Pants这样的构建工具不必要地使这个过程复杂化。我最终将它分成了svn中的多个项目 - 每个项目都有自己的trunk / tags / branches目录。依赖于herehere的信息,使用install_requires和requirements.txt文件的组合来处理依赖关系。每个项目都有一个fabfile来运行常见任务,如清理,构建,上传到pypi等。