Ich versuche, alle Django-Pakete in meiner Superuser-Umgebung zu deinstallieren, um sicherzustellen, dass alle meine Webanwendungsabhängigkeiten auf meiner virtuellen Umgebung installiert sind.
sudo su
sudo pip freeze | grep -E '^django-' | xargs pip -q uninstall
Pip möchte jedoch bestätigen, dass jedes Paket deinstalliert wird, und es scheint keine -y
Option für pip zu geben. Gibt es eine bessere Möglichkeit, einen Stapel von Python-Modulen zu deinstallieren? Ist rm -rf .../site-packages/
ein richtiger Weg zu gehen? Gibt es eine easy_install-Alternative?
Alternativ wäre es besser, pip zu zwingen, alle Abhängigkeiten auf der virtuellen Umgebung zu installieren, als sich auf die System-Python-Module zu verlassen, um diese Abhängigkeiten zu erfüllen, z. B. pip --upgrade install
selbst gleich alte Versionen zu installieren, um alle Systemmodule zu überschreiben. Ich habe versucht, meine virtuelle Umgebung zu aktivieren, pip install --upgrade -r requirements.txt
und das scheint die Abhängigkeiten zu installieren, auch die in meinem Systempfad vorhandenen, aber ich kann nicht sicher sein, ob dies daran liegt, dass meine Systemmodule alt waren. Und man pip
scheint dieses Verhalten nicht zu garantieren (dh die gleiche Version eines Pakets zu installieren, die bereits in den System-Site-Paketen vorhanden ist).
yes
ist so nützlich.