我正在尝试修复我的一个virtualenv -我想将所有已安装的库重置为与生产相匹配的库。
有没有一种快速简单的方法来处理皮普?
我正在尝试修复我的一个virtualenv -我想将所有已安装的库重置为与生产相匹配的库。
有没有一种快速简单的方法来处理皮普?
当前回答
最快的方法是完全重做virtualenv。我假设你有一个符合生产的requirements.txt文件,如果没有的话:
# On production:
pip freeze > reqs.txt
# On your machine:
rm $VIRTUALENV_DIRECTORY
mkdir $VIRTUALENV_DIRECTORY
pip install -r reqs.txt
其他回答
最快的方法是完全重做virtualenv。我假设你有一个符合生产的requirements.txt文件,如果没有的话:
# On production:
pip freeze > reqs.txt
# On your machine:
rm $VIRTUALENV_DIRECTORY
mkdir $VIRTUALENV_DIRECTORY
pip install -r reqs.txt
从虚拟环境中删除所有包的最佳方法。
Windows PowerShell:
pip freeze > unins ; pip uninstall -y -r unins ; del unins
Windows命令提示符:
pip freeze > unins && pip uninstall -y -r unins && del unins
Linux:
pip3 freeze > unins ; pip3 uninstall -y -r unins ; rm unins
使用pip list或pip freeze的其他答案必须包括——local,否则它还将卸载在公共名称空间中找到的包。
下面是我经常使用的代码片段
pip freeze --local | xargs pip uninstall -y
参考:pip freeze——救命
我做到了以下几点:
用当前安装的包列表创建名为reqs.txt的需求文件
pip freeze > reqs.txt
然后卸载reqs.txt中的所有包
# -y means remove the package without prompting for confirmation
pip uninstall -y -r reqs.txt
我喜欢这种方法,因为如果你犯了错误,你总是有一个pip需求文件可以依靠。它也是可重复的,而且是跨平台的(Windows、Linux、MacOs)。
方法一(冷冻)
pip freeze | xargs pip uninstall -y
方法二(附pip表)
pip list | awk '{print $1}' | xargs pip uninstall -y
方法三(使用virtualenv)
virtualenv --clear MYENV