目前我的Django项目有一个庞大的自述文档,任何开发人员都必须遵循设置他们的开发环境。
它是这样的:
先决条件:
- Django Css。参见Django CSS。
- CleverCSS。见Clever CSS。
- 美丽的汤。见美丽的汤。
- Dateutil。见python-dateutil。
- httplib2的 http://code.google.com/p/httplib2/
- 蟒-的oauth2 https://github.com/simplegeo/python-oauth2
- 蟒-微博 http://code.google.com/p/python-twitter/
醇>
是否有任何设施可以编写某种自动获取依赖关系的脚本?至少要将此过程部分自动化为以下内容:
python setup_environment.py
我看过setuptools - 但在我看来,更多是为了将应用程序本身安装到系统上,而不是满足开发人员对环境设置的要求。
答案 0 :(得分:6)
pip不会做这个工作吗?
http://www.pip-installer.org/en/latest/index.html#
您可以冻结服务器上的所有要求到文件(在服务器上运行):
pip freeze > REQUIREMENTS.txt
然后在您的开发环境中:
pip install -r ./REQUIREMENTS.txt
安装REQUIREMENTS文件中列出的所有内容。
您还应该考虑在开发(和生产)服务器上安装 virtualenv (和virtualenvwrapper)
http://iamzed.com/2009/05/07/a-primer-on-virtualenv/
它们允许您设置多个封装的python环境。这意味着你可以在同一台机器上安装两个django应用程序,每个应用程序都有不同的python版本/ python应用程序/ django版本。
答案 1 :(得分:0)
您还需要每个版本的特定版本 - 您构建并测试应用程序的版本。
但它们都只是python模块 - 即未编译的文本文件。您可以将它们全部放在源代码中,这样当它们获取代码时,它们会同时获得所有这些确切的依赖项。设置pythonpath,你就完成了。
只要程序包是纯python就可以正常工作。任何潜伏在那里的C libs你可能会回到pip / setuptools / apt / easy - “lxml”我正在谈论你。