我想使用buildout进行依赖关系管理,我听说分发是管理项目安装的新方法。
然而,简单的入门教程似乎很薄弱。我见过的最直接的是Jacob Kaplan-Moss的Developing Django apps with zc.buildout(我的用例是一个Web应用程序),但是对于每个链的作用以及最佳实践仍然不是很清楚是
我如何开始使用这些东西?我想做正确的事。
答案 0 :(得分:6)
我刚刚开始在http://reinout.vanrees.org/weblog/tags/softwarereleasesseries.html记录整个工具链(2010-02-25:仍然需要编写buildout和pastescript文章)。
基本工具链的想法:使用setuptools打包你的python代码。就像“开发django应用程序”文章一样,你提到:每个应用程序都是自己的包。将代码放在目录中并添加setup.py。 setup.py包含版本号,名称,依赖关系等等,您可以运行它来创建yourproject-0.1.tar.gz。
快速下载所有内容(“easy_install xyz”)会使系统python的site_packages完全崩溃。可能与版本不兼容。 Buildout(例如virtualenv)为您提供了一个独立的环境:已安装的软件包仅安装在virtualenv / buildout的本地。
混乱第2部分:您想要哪些版本?要获得任何可重复性和可靠性的测量,您必须能够控制您使用的版本(“Django 1.0或1.1?”)。 Buildout允许这样做。
答案 1 :(得分:0)
您可能已经找到了它,但是您已经检查过the buildout website吗?