web-dev-qa-db-fra.com

Impossible d'activer un virtualenv dans GIT bash mingw32 pour Windows

Lorsque j'essaie d'activer mon virtualenv à partir de GIT bash mingw32, je n'obtiens pas la réponse attendue. 

REMARQUE: py est le dossier des projets Python dans mon dossier Google Drive. hy est le dossier virtualenv créé lors de l'exécution de virtualenv --distribute hy

s3z@s3z ~/Google Drive/py/hy
$ Scripts/activate

Donc vous voyez, il n'y a pas d'attendu (hy) qui apparaît avant s3z@s3z ~/Google Drive/py/hy

s3z@s3z ~/Google Drive/py/hy
$ Scripts/activate.bat
Scripts/activate.bat: line 1: @echo: command not found
Scripts/activate.bat: line 4: syntax error near unexpected token `('
Scripts/activate.bat: line 4: `if not defined Prompt ('

Et lorsque je cible le nom de fichier actuel, activate.bat, je reçois des messages d'erreur. Ensuite, j'essaie de désactiver pour voir ce qui se passe car je pensais que virtualenv était peut-être activé mais caché. 

s3z@s3z ~/Google Drive/py/hy
$ Scripts/deactivate.bat
Scripts/deactivate.bat: line 1: @echo: command not found
Scripts/deactivate.bat: line 3: syntax error near unexpected token `('
Scripts/deactivate.bat: line 3: `if defined _OLD_VIRTUAL_Prompt ('

s3z@s3z ~/Google Drive/py/hy
$ Scripts/deactivate
sh.exe": Scripts/deactivate: No such file or directory

Des idées?

34
user883807

Faire Scripts/activate exécute le script dans une nouvelle instance du shell, qui est détruite après l'exécution du script. Pour exécuter le script dans votre shell actuel, utilisez . Scripts/activate ou source Scripts/activate.

Scripts/activate.bat ne fonctionne pas ici car il est écrit en batch, le langage cmd.exe de Windows et non en bash.

69
Pierre Bourdon

Sous Windows 10, vous pouvez aller dans le répertoire de votre virtualenv où le dossier Scripts est placé, puis entrer la commande ci-dessous.

source ./Scripts/activate

Notez le point (point) sans cela, cela me donnait une erreur lorsque je l'utilisais comme mentionné ci-dessus, la solution fournie par Pierre fonctionnait pour moi.

0
Aman Tandon