Lösung für WSL (Ubuntu unter Windows)
Wenn Sie WSL (Ubuntu unter Windows) verwenden, können Sie bash auch als Terminal in pycharm öffnen und eine virtuelle Linux-Umgebung aktivieren.
Verwenden Sie eine .pycharmrc
Datei wie in Peter Gibsons Antwort beschrieben. Fügen Sie die .pycharmrc
Datei mit folgendem Inhalt zu Ihrem Home-Verzeichnis hinzu:
source ~/.bashrc
source ~/path_to_virtualenv/bin/activate
Fügen Sie unter Pycharm- Datei> Einstellungen> Extras > Terminal den folgenden 'Shell-Pfad' hinzu:
"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"
Projektspezifische virtuelle Umgebung
Der Pfad zu Ihrer virtuellen Umgebung .pycharmrc
muss nicht absolut sein. Sie können eine projektspezifische virtuelle Umgebung festlegen, indem Sie einen relativen Pfad aus Ihrem Projektverzeichnis festlegen. Meine virtuelle Umgebung befindet sich immer in einem 'venv'-Ordner unter meinem Projektverzeichnis, daher .pycharmrc
sieht meine Datei folgendermaßen aus:
Quelle ~ / .bashrc
Quelle ~ / pycharmvenv / bin / aktivieren #absoluten Pfad
source ./venv/bin/activate #relative path
BONUS: Öffnet automatisch den SSH-Tunnel, um virtualenv als Projektinterpreter zu verbinden
Fügen Sie Ihrer .pycharmrc
Datei Folgendes hinzu :
if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
sudo service ssh start
fi
Dies prüft, ob ein SSH-Tunnel bereits geöffnet ist, und öffnet ansonsten einen. Unter Datei -> Einstellungen -> Projekt -> Projektinterpreter in PyCharm, ein neues Remote - Interpreter mit folgenden Konfiguration hinzu:
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
| Name: | <Dolmetschername> | | |
| Wählen Sie | 'SSH-Anmeldeinformationen' | | |
| Gastgeber: | 127.0.0.1 | Hafen: | 22 |
| Benutzer: | <Linux-Benutzername> | | |
| Authentifizierungstyp: | 'Passwort' | | |
| Passwort: | <Linux-Passwort> | | |
| Python-Interpreter-Pfad: | <Linux-Pfad zu Ihrer virtuellen Umgebung> | | |
| Pfad der Python-Helfer: | <Automatisch einstellen> | | |
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
Wenn Sie jetzt Ihr Projekt öffnen, startet Ihre Bash automatisch in Ihrer virtuellen Umgebung, öffnet einen SSH-Tunnel und Pycharm verbindet die virtuelle Umgebung als Remote-Interpreter.
Warnung: Das letzte Update in Windows startet beim Start automatisch einen SshBroker- und SshProxy-Dienst. Diese blockieren den SSH-Tunnel von Linux zu Windows. Sie können diese Dienste im Task-Manager -> Dienste beenden. Danach funktioniert alles wieder.
~/pycharmenv/bin/terminalactivate
klingt nach einer guten Option.