使用Pip在不同目录中安装测试Python包

时间:2018-05-24 13:51:48

标签: python pip virtualenv

我有一个python distutils模块,我在生产中使用。我在虚拟环境中安装了该生产模块。但是,我希望能够在生产环境中安装之前测试升级。我也试图避免创建第二个虚拟环境。因此我尝试了以下方法:

# inside my virtualenv
# checkout master of my repo
git clone git+git://github.com/myrepo
cd myrepo
# create directory where my testing install will live
mkdir testinstall
# prepend my testing install to the PYTHONPATH to over-ride the
# production install of my repo
export PYTHONPATH=$PWD/testinstall/lib/python2.7/site-packages:$PYTHONPATH
# install my local package with pip into the test area
pip install --prefix=$PWD/testinstall .

在这种情况下,我从pip获得错误:

Requirement already satisfied from /path/to/production/myrepo

如果我使用

pip install --upgrade --prefix=$PWD/testinstall

pip继续从/path/to/production/myrepo卸载生产版本并在testinstall区域安装我的测试版本。

知道如何强制pip以这种方式安装吗?

2 个答案:

答案 0 :(得分:1)

我只是使用新的venv,但如果你真的不能,请使用-t(目标)选项。

pip3 install --upgrade -t my_new_directory

答案 1 :(得分:1)

尝试这样做而不是

pip install --target=d:\somewhere\other\than\the\default package_name