我有一个脚本可以创建virtualenv
,在其中安装distribute
和pip
,然后可选择克隆git
个回购。
现在我已经安装了我将要开发的项目。但是没有安装它的依赖项。如何让pip
安装所有依赖项,就像我发布了pip install MyApp
一样?
编辑:显然我的问题与this one重复。
不完全确定,pip install -e .
似乎做了我想做的事,没有太多额外的东西。如果我的代码没有从site-packages
链接,我更喜欢。
答案 0 :(得分:20)
在我的软件包根目录中发布pip install -e .
安装依赖项。
答案 1 :(得分:7)
您应该使用点数要求文件。
基本上,将所有需求放在一个文件中的每一行中,并使用命令将其传递给pip
pip install -r requirements.txt
此外,如果您有标准环境,pip实际上可以使用以下命令从现有安装中转储此类文件:
pip freeze
您可以将生成的文件直接放入pip要求,并从部署脚本中调用上一个命令。
非常酷,不是吗? :)
答案 2 :(得分:5)
如果您的依赖项在setup.py
文件中定义,则可以先使用以下命令将它们转储到外部文件中:
python setup.py egg_info
这将在YOUR_PROJECT.egg-info/requires.txt
文件中列出所有依赖项。然后,您可以使用pip
安装它们:
pip install -r *.egg-info/requires.txt
答案 3 :(得分:0)
要安装项目的依赖项(即install_requires
+ extra_requires
),您必须使用setuptools egg-info
提取依赖项,然后安装组合依赖项的过滤列表:
python setup.py egg_info
pip install `grep -v '^\[' *.egg-info/requires.txt`