2015-10-26 116 views
0

我正在將整體項目代碼庫拆分爲幾個較小的項目。我很難理解如何正確處理不同項目之間的依賴關係。Python多項目構建

的結構看起來有點像這樣:

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

什麼是處理多包項目和設置之間的相關開發環境的推薦的方法?我使用pip,virtualenv和requirements.txt文件。是否有任何工具可以讓我快速從存儲庫引導環境?

回答

1

使用像Pybuilder或Pants這樣的構建工具不必使複雜的過程。我最終將它分成了多個svn項目 - 每個項目都有自己的trunk/tags/branches目錄。根據herehere的信息,使用install_requires和requirements.txt文件的組合來處理依存關係。每個項目都有一個fabfile來運行常見任務,如清理,編譯,上傳到pypi等。