/ / Activando pyvenv desde gitbash para windows - python, windows, python-3.x, virtualenv, git-bash

Activando pyvenv desde gitbash para windows - python, windows, python-3.x, virtualenv, git-bash

Yo uso gitbash en windows (7, 64 bits). Intenté crear un venv usando el módulo de venv incorporado de python 3.4 "llamando python -m venv venv, y se creó con éxito, pero el venv resultante no contiene una secuencia de comandos de activación de bash, solo una .bat y .ps1.

La biblioteca virtualenv para python 2.6.6 (versión 13.0.1) creó los siguientes cuatro archivos en el venv/Scripts/ carpeta: activate, activate.bat, activate.ps1y activate_this.py.

Como la consola gitbash no puede usar el bate oLos scripts de powershell, y realmente no quiero tener que volver al indicador de Windows cmd o a una máquina virtual, ¿hay alguna forma en la que Pyvenv pueda crear un script de shell para mí mientras estoy en Windows?

Respuestas

3 para la respuesta № 1

Esto es (actualmente) por diseño.

En Windows, solo se instalan las secuencias de comandos (.bat) y PowerShell (.ps1). La documentación de venv dice "La invocación del guión esplataforma específica ": consulte la tabla en ese documento, que contiene los comandos para activar venv en diferentes plataformas. Si observa el código fuente de venv, verá que se diferencia entre los entornos de Windows y POSIX e instala los scripts en consecuencia.

Sin embargo, hay una error abierto que solicita que los scripts para otros shellsTambién debe instalarse. Mientras espera que eso se resuelva, hay una solución alternativa: puede tomar el script bash (u otro shell) de su máquina local o de la cPython hg repositorio (enlace directo al archivo) y póngalo en la carpeta Scripts junto a las específicas de Windows. Necesitas cambiar __VENV_DIR__ al directorio donde se encuentra tu venv, __VENV_BIN_NAME__ a "bin", y __VENV_PROMPT__ para lo que quiera que sea el indicador de bash cuando se active el venv (por ejemplo, "(env)"). Establece los permisos, y deberías estar listo para salir.


4 para la respuesta № 2

No tiene que preocuparse por la presencia de script env bash virtual vaya a Git Bash y use . Scripts/activate o source Scripts/activate como se menciona en la respuesta en este tema No se puede activar un virtualenv en GIT bash mingw32 para Windows


1 para la respuesta № 3

El siguiente código explica cómo configurar e iniciar un virtualenv llamado env_project dentro de una carpeta llamada project en Git Bash:

mkdir project
cd project/
virtualenv env_project
. activate env_project/

1 para la respuesta № 4

esto funcionó para mí: . activar