Pourquoi npm install ne fonctionne pas sur git bash

j'ai git bash et je l'ai taper npm install et puis il renvoie:

bash: npm command not found

je ne comprends pas, parce que j'ai node.js invite de commande et quand je tape npm -v ensuite, il retourne 3.7.3. Pourquoi ça ne marche pas en git?

17
demandé sur taskinoor 2016-03-10 14:56:27

9 réponses

en git bash type ...

which npm

cela vous indiquera où mnp est installé.

maintenant je suppose que cela ne donnera rien puisqu'il semble que la npm ne soit pas sur votre variable de chemin système. La variable PATH définit où Windows recherche les commandes.

allez dans votre panneau de configuration et 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 est normal de windows console et tapez ...

where npm

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

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

PS Si vous voulez vérifier la variable PATH à l'intérieur de git bash pour vous assurer que le bon dossier npm est sur le PATH, tapez juste ...

echo $PATH

PPS un autre conseil - vous pouvez modifier le chemin pour git bash seulement via votre .bashrc OR .bash_profile fichiers

15
répondu danday74 2016-03-10 12:07:46

si vous êtes sur Windows, essayez ceci: Dans CMD, allez dans le 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!

10
répondu Tiago Oliveira 2017-09-20 12:31:47

dans notre cas, la solution était simplement de fermer la fenêtre Git bash et de la rouvrir.

7
répondu Ben 2018-01-10 18:26:11

vous devez ajouter nodejs à votre chemin, avec npm

où le noeud

où mnp

2
répondu Devnegikec 2016-03-10 12:24:13

vous Êtes sur Windows?

Si oui, pouvez-vous aller à la Git Bash console et exécuter:

echo $PATH

et ensuite vérifier si le chemin de noeud(par exemple c/fichiers de programme/noeud ) est là?

si le chemin du noeud n'est pas là, vous devrez l'ajouter à la variable chemin du système.

si elle est là, pouvez-vous essayer d'exécuter npm entre guillemets?

"npm"
1
répondu Nevitones 2016-06-23 01:07:24

en supposant que vous êtes sur Windows en train d'essayer git-bash, et que node a été installé par Visual Studio: la cause peut être un manque npm script bash.

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

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

Mais git bash wont run .cmd fichiers. Vous devez donc créer un script bash pour npm.

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

#!/bin/sh
basedir=`dirname ""`

case `uname` in
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac

if [ -x "$basedir/node" ]; then
  "$basedir/node"  "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
  ret=$?
else 
  node  "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
  ret=$?
fi
exit $ret
1
répondu Gerardo Grignoli 2016-10-08 19:47:55

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

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

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 être en mesure d'exécuter npm à partir de Mintty.

ces autres questions pourraient être utiles également.

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

1
répondu Marc Barbeau 2017-07-31 00:13:24

j'ai eu le même problème et j'ai reussi à le résoudre en changeant l' gitC:\Program Files\Git\cmdC:\Program Files\Git

Espère que cela va aider quelqu'un

0
répondu user3182237 2017-12-27 16:24:06

j'ai dû ajouter le chemin du noeud à la variable système et redémarrer. Pour une raison quelconque, fermer et rouvrir git bash n'était pas suffisant!--1-->

0
répondu Terix 2018-07-18 15:00:04