web-dev-qa-db-fra.com

Comment se fait-il que l’installation de npm ne fonctionne pas sur git bash

J'ai ouvert git bash et je tape npm install, puis il retourne:

bash: npm command not found

Je ne comprends pas, car j'ai la commande node.js Invite et lorsque je tape npm -v, il retourne 3.7.3. Comment ça se fait que ça ne marche pas dans git?

21
damien9999

dans le type git bash ...

which npm

cela vous indiquera où npm est installé.

maintenant, je suppose que cela ne vous donnera rien puisqu'il semble que npm ne figure pas dans la variable système PATH. La variable PATH définit où Windows recherche les commandes.

Accédez au panneau de configuration, cliquez sur Paramètres avancés du système et ajoutez le répertoire contenant npm à votre chemin.

si vous ne savez pas où il se trouve, ouvrez une console Windows normale et tapez ...

where npm

cela vous montrera où il est afin que vous puissiez l'ajouter à votre chemin

fermez ensuite votre terminal git bash et rouvrez-le; npm devrait fonctionner.

PS si vous voulez vérifier la variable PATH dans git bash pour vous assurer que le bon dossier npm se trouve sur le PATH, tapez ...

echo $PATH

PPS Autre astuce - vous pouvez modifier le PATH pour git bash uniquement via vos fichiers .bashrc OR .bash_profile.

16
danday74

Si vous êtes sous Windows, essayez ceci: Dans CMD, accédez au dossier 

C:\Program Files or (x86)\nodejs\

Alors essayez ce qui suit

C:\Program Files\nodejs>set path=%PATH%;%CD%
C:\Program Files\nodejs>setx path "%PATH%"

Ça marche pour moi!

11
Tiago Oliveira

Dans notre cas, la solution consistait simplement à fermer la fenêtre Git bash et à la rouvrir.

11
Ben

L'émulateur de terminal installé par git s'appelle Mintty . Pour exécuter npm avec Mintty, vous devez ajouter le chemin d'accès à une variable d'environnement. 

Ajoutez la ligne suivante à votre fichier ~\.bash_profile. S'il n'existe pas, créez-le.

PATH="/usr/local/share/npm/bin:/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

Quand Mintty démarre, il va lire .bash_profile. Vous devriez maintenant pouvoir exécuter npm à partir de Mintty.

Ces autres questions pourraient également être utiles.

https://unix.stackexchange.com/questions/26047/how-to-correctly-add-a-path-to-pathhttps://askubuntu.com/questions/58814/ how-do-i-add-environment-variables

2
Marc Barbeau

vous devez ajouter nodejs à votre chemin, avec npm 

où noeud

où npm

2
Devnegikec

En supposant que vous êtes sous Windows en train d'essayer git-bash et que le nœud a été installé par Visual Studio: la cause peut être un script npm bash manquant.

Il y a un fichier Bath npm.cmd dans le chemin: 

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Web\External\npm.cmd

Mais git bash ne lance pas les fichiers .cmd. Vous devez donc créer un script bash pour npm.

Créez le fichier suivant nommé npm dans votre dossier de noeuds: (C:\Program Files (x86)\Microsoft Visual Studio 14.0\Web\External\)

 #!/bin/sh 
 basedir = `dirname" $ ​​0 "` 

 case `uname` dans 
 * CYGWIN *) basedir = `cygpath -w" $ basedir "` ;;; 
 Esac 

 If [-x "$ basedir/node"]; puis
 "$ basedir/node" "$ basedir/node_modules/npm/bin/npm-cli.js" "$ @" 
 ret = $? 
 sinon 
 noeud "$ basedir/node_modules/npm/bin/npm-cli.js" "$ @" 
 ret = $? 
 fi 
 exit $ ret 
1
Gerardo Grignoli

Êtes-vous sur Windows?

Si tel est le cas, pouvez-vous accéder à la console Git Bash et exécuter:

echo $PATH

puis vérifiez si le chemin du noeud (par exemple, c/Program Files/node) est là?

Si le chemin du nœud n'est pas là, vous devrez l'ajouter à la variable du chemin du système.

Si c'est le cas, pouvez-vous essayer d'exécuter npm entre guillemets?

"npm"
1
Nevitones

J'ai eu le même problème et j'ai réussi à le résoudre en modifiant la variable système git enviornment deC:\Program Files\Git\cmdenC:\Program Files\Git

J'espère que cela aidera quelqu'un

0
user3182237

J'ai dû ajouter le chemin d'accès au nœud à la variable système ET au redémarrage. Pour une raison quelconque, fermer et rouvrir git bash n'était pas suffisant

0
Terix