web-dev-qa-db-fra.com

git-bash $ PATH ne peut pas analyser le répertoire Windows avec de l'espace

Je voudrais utiliser git-bash avec le client github sur un ordinateur Windows 7 (32 bits). D'une manière ou d'une autre, git-bash a déjà appris les variables $PATH à partir du système Windows PATH. Cependant, j’ai trouvé que le $PATH dans git-bash n’analysait pas correctement le chemin du système win avec un espace. 

par exemple, le $PATH génère:

"..../c/Program: Aucun fichier ou répertoire de ce type"

Y a-t-il un moyen de le réparer? où est le script git-bash pour construire le $PATH pour le shell git? Merci

17
wyonghao

Pourquoi ne pas utiliser path absolu au lieu de path relatif et si un dossier de nom de fichier contient un espace, utilisez simplement "" (guillemets).

Ex. cd C:/Users/"My Folder"

25
Chris Hermut

Placez une barre oblique inverse ("\") avant l'espace.

ex. cd My\ Documents

10
Sam Haars

J'ai un problème similaire .
Après quelques efforts, je mets ceci sur la première ligne de mon C:\Program Files\Git\etc\profile:

exportation HOME = `cygpath -u"\`cygpath -d" $ HOMEDRIVE $ HOMEPATH "\` "`

et tapez la commande echo $HOME dans bash sortira /c/Users/NAMEXX~1, plus aucun problème d’analyse d’espace pour mon $HOME ou ~/!

2
Seagal82

git-bash s'exécute dans un environnement Linux. En tant que Linux ne reconnaît pas \ backslash dans son chemin de répertoire, vous devez utiliser / forwardslash. Utilisez "" si votre chemin de répertoire contient des espaces.

1
ihayet

La réponse pour moi était proche de celle de Seagal82 . J'ai ajouté la ligne suivante au début de [PATH_TO_GITBASH_INSTALL]\etc\profile:

export HOME="/c/Users/Username\ with\ spaces/"

Ensuite, j'ai lancé une nouvelle fenêtre git bash et tous les chemins dans $PATH utilisant $HOME ont été remplacés par un espace anti-slashed et fonctionnent correctement.

0
Draco Dynasty