我想使用buildout进行依赖项管理,并且听说分发是管理项目安装的新好方法。
但是,简单的入门指南似乎很少。我见过的最直接的方法是Jacob Kaplan-Moss的Developing Django apps with zc.buildout(我的用例是一个Web应用程序),但是对于链中的每个部分做什么以及最佳实践还不是很清楚。
我该如何处理这些东西?我想做正确的事。
最佳答案
我刚刚在http://reinout.vanrees.org/weblog/tags/softwarereleasesseries.html上开始记录整个工具链(2010年2月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?”)。扩展允许。
关于python - 我如何开始使用zc.buildout和Distribute?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2305723/