Giải pháp cho WSL (Ubuntu trên Windows)
Nếu đang sử dụng WSL (Ubuntu trên Windows), bạn cũng có thể mở bash dưới dạng thiết bị đầu cuối trong pycharm và kích hoạt virtualenv linux.
Sử dụng một .pycharmrc
tệp như được mô tả trong câu trả lời của Peter Gibson; Thêm .pycharmrc
tệp vào thư mục chính của bạn với nội dung sau:
source ~/.bashrc
source ~/path_to_virtualenv/bin/activate
Trong Tệp Pycharm > Cài đặt> Công cụ> Thiết bị đầu cuối, thêm 'Đường dẫn vỏ' sau:
"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"
Dự án virtualenv cụ thể
Đường dẫn đến virtualenv của bạn trong .pycharmrc
không nhất thiết phải tuyệt đối. Bạn có thể đặt virtualenv cho một dự án cụ thể bằng cách đặt một đường dẫn tương đối từ thư mục dự án của bạn. Virtualenv của tôi luôn nằm trong thư mục 'venv' trong thư mục dự án của tôi, vì vậy .pycharmrc
tệp của tôi trông giống như sau:
nguồn ~ / .bashrc
nguồn ~ / pycharmvenv / bin / kích hoạt đường dẫn #absolute
source ./venv/bin/activate #relative path
THƯỞNG: tự động mở đường hầm ssh để kết nối virtualenv làm trình thông dịch dự án
Thêm phần sau vào .pycharmrc
tệp của bạn :
if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
sudo service ssh start
fi
Thao tác này kiểm tra xem một đường hầm ssh đã được mở chưa và mở một đường hầm khác. Trong Tệp -> Cài đặt -> Dự án -> Trình thông dịch dự án trong Pycharm, thêm trình thông dịch từ xa mới với cấu hình sau:
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
| Tên: | <Tên thông dịch viên> | | |
| Chọn | 'Thông tin đăng nhập SSH' | | |
| Chủ nhà: | 127.0.0.1 | Cổng: | 22 |
| Người dùng: | <Tên người dùng Linux> | | |
| Loại xác thực: | 'Mật khẩu' | | |
| Mật khẩu: | <Mật khẩu Linux> | | |
| Đường dẫn của trình thông dịch Python: | <Đường dẫn Linux đến virtualenv của bạn> | | |
| Đường dẫn trình trợ giúp Python: | <Đặt tự động> | | |
+ -------------------------- + ---------------------- ----------- + ------- + ---- +
Bây giờ khi bạn mở dự án của mình, bash của bạn sẽ tự động bắt đầu trong virtualenv của bạn, mở một đường hầm ssh và pycharm kết nối virtualenv làm trình thông dịch từ xa.
cảnh báo: bản cập nhật cuối cùng trong Windows tự động khởi động dịch vụ SshBroker và SshProxy khi khởi động. Chúng chặn đường hầm ssh từ linux đến windows. Bạn có thể dừng các dịch vụ này trong Trình quản lý tác vụ -> Dịch vụ, sau đó mọi thứ sẽ hoạt động trở lại.
~/pycharmenv/bin/terminalactivate
nghe có vẻ là một lựa chọn tốt.