J'essaye d'utiliser autant que possible l'homebrew. Quelle est la méthode suggérée pour installer les éléments suivants sur OS X?
et nous espérons soutenir le développement pour:
J'essaye d'utiliser autant que possible l'homebrew. Quelle est la méthode suggérée pour installer les éléments suivants sur OS X?
et nous espérons soutenir le développement pour:
Réponses:
En utilisant homebrewinstaller nvm:
brew update
brew install nvm
source $(brew --prefix nvm)/nvm.sh
Ajoutez la dernière commande au fichier .profile, .bashrcou .zshrcpour ne plus l'exécuter à chaque démarrage du terminal. Donc par exemple pour l'ajouter à la .profilecourse:
echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile
Si vous rencontrez des problèmes lors de l'installation en nvmutilisant, brewvous pouvez l'installer manuellement (voir ici )
En utilisant nvminstall nodeou iojs(vous pouvez installer la version de votre choix):
nvm install 0.10
# or
nvm install iojs-1.2.0npmest expédié avec node(ou iojs), il sera donc disponible après l'installation node(ou iojs). Vous souhaiterez peut-être le mettre à niveau vers la dernière version:
$ npm install -g npm@latest
UPD La version précédente était . Merci à @Metallica pour avoir indiqué le bon chemin (regardez le commentaire ci-dessous).npm update -g npm
En utilisant npminstaller ionic:
npm install -g ionicQu'en est-il ngCordova: vous pouvez l'installer en utilisant npmou bower. Je ne sais pas quelle variante vous convient le mieux, cela dépend du gestionnaire de packages que vous souhaitez utiliser pour le côté client. Je vais donc les décrire tous les deux:
Utilisationnpm : Accédez au dossier de votre projet et installez- ng-cordovay:
npm install --save ng-cordovaUtilisationbower : Installez le bower:
npm install -g bower
Et puis allez dans votre dossier de projet et installez- ngCordovay:
bower install --save ngCordovaPS
npm install some_moduleisnpm i some_modulenpm install -g npm@latest(à partir de brew info node, et ici )
Dans la plupart des réponses, la méthode recommandée pour installer nvm est d'utiliser Homebrew
Ne faites pas cela
Sur Github Page for NVM, il est clairement indiqué:
L'installation Homebrew n'est pas prise en charge. Si vous rencontrez des problèmes avec nvm installé par homebrew, veuillez le désinstaller et l'installer en suivant les instructions ci-dessous, avant de signaler un problème.
Utilisez plutôt la méthode suivante
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Le script clone le référentiel nvm vers ~ / .nvm et ajoute la ligne source à votre profil (~ / .bash_profile, ~ / .zshrc, ~ / .profile ou ~ / .bashrc).
Et puis utilisez nvm pour installer node. Par exemple, pour installer la dernière version de LTS, procédez comme suit:
nvm install v8.11.1
Propre et sans tracas. Cela marquerait également cela comme votre version de nœud par défaut, vous devriez donc être prêt
nvm install --ltsobtenir la dernière LTS
J'utilise n (gestion de version de nœud)
Vous pouvez l'installer de deux manières
brew install n
ou
npm install -g n
Vous pouvez basculer entre différentes versions de node et io. Voici un exemple de mon env actuel lorsque j'appelle n sans paramètres:
$ n
io/3.3.1
node/0.12.7
node/4.0.0
node/5.0.0
ο node/5.10.1
Je suis super en retard mais je n'ai pas aimé les autres réponses
Pour brasser terme
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Vous NE DEVRIEZ PAS utiliser brewpour installer node et npm .
J'ai vu quelques endroits suggérant que vous devriez utiliser Homebrew pour installer Node (comme la réponse alexpods et dans ce billet de blog Team Treehouse ), mais en installant de cette façon, vous êtes plus susceptible de rencontrer des problèmes car npmet vous brewêtes tous les deux gestionnaires de paquets et vous devriez ont un gestionnaire de paquets à gérer un autre gestionnaire de paquets ce qui conduit à des problèmes, comme ce bug offical NPM problèmes erreur: Refusant de supprimer: / usr / bin local / / NPM ou ce ne peut pas le module de désinstallation de NPM sur OSX
Vous pouvez en savoir plus sur le sujet dans l'article de DanHerbert Fixing npm On Mac OS X for Homebrew Users , où il poursuit en disant
En outre, l'utilisation de l'installation Homebrew de npm vous obligera à utiliser sudo lors de l'installation de packages globaux. Étant donné que l'une des idées fondamentales derrière Homebrew est que les applications peuvent être installées sans leur donner un accès root, c'est une mauvaise idée.
J'utiliserais npm; mais vous devez vraiment suivre les instructions d'installation pour chaque module en suivant les instructions sur leur site Web car ils seront plus conscients de tout problème ou bogue qu'ils ont que quiconque
Si vous avez déjà installé node en utilisant brew, vous aurez alors un tas de fichiers supplémentaires que vous devrez nettoyer avant d'installer le node "dans le bon sens". De plus, j'ai dû ajouter quelques paramètres à mon script de démarrage pour que les choses fonctionnent correctement.
J'ai écrit un script pour rendre cela facile.
# filename: install-nvm-npm-node
# author: Lex Sheehan
# purpose: To cleanly install NVM, NODE and NPM
# dependencies: brew
NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if [ "$NODE_VER_TO_INSTALL" == "" ]; then
NODE_VER_TO_INSTALL=v0.12.2
fi
if [ "`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`" != "v" ]; then
echo """$CR""Usage: $ $MY_NAME <NODE_VERSION_TO_INSALL>"
echo "Example: $ $MY_NAME v0.12.1"
echo "Example: $ $MY_NAME $CR"
exit 1
fi
echo """$CR""First, run: $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version: $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x
echo """$REV""Uninstalling nvm...$CR$OFF"
# Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)
if [ ! -d "$BACKUP_DIR" ]; then
echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
mkdir -p $BACKUP_DIR
fi
set -x
mv $HOME/.nvm $BACKUP_DIR 2>/dev/null
mv $HOME/.npm $BACKUP_DIR 2>/dev/null
mv $HOME/.bower $BACKUP_DIR 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"
set -x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Installing nvm...$CR$OFF"
echo "++brew install nvm"
brew install nvm
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"
echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"
echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{ set +x; } &>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors: npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"
J'ai écrit un court article ici qui détaille pourquoi c'est "la bonne manière".
Si vous devez installer iojs, faites-le en utilisant nvm comme ceci:
nvm install iojs-v1.7.1
Pour installer Brew, il suffit de voir sa page d'accueil .
Voir la réponse d'alexpods pour le reste.
Vous devez installer node.js avec nvm, car de cette façon, vous n'avez pas à fournir de privilèges de superutilisateur lors de l'installation de packages globaux (vous pouvez simplement exécuter "npm install -g nom_package" sans ajouter 'sudo').
Brew est cependant fantastique pour d'autres choses. J'ai tendance à être biaisé envers Bower chaque fois que j'ai la possibilité d'installer quelque chose avec Bower.
Je suis d'accord avec noa - si vous avez besoin de plusieurs versions de node, io.jsalors brew n'est pas la solution appropriée.
Vous pouvez aider à la io.jsprise en charge des tests bêta dans nvm: https://github.com/creationix/nvm/pull/616
Si vous voulez simplement io.jschanger de version et ne le faites pas, vous pouvez installer la distribution binaire io.jsde https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; cela inclut npmet vous n'en aurez pas besoin nvmsi vous ne changez pas de version.
N'oubliez pas de mettre à jour npmaprès l'installation:sudo npm install -g npm@latest
Voici ce que je fais:
curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35
Pas de Homebrew pour celui-ci.
nvmbientôt supportera io.js, mais pas au moment de la publication: https://github.com/creationix/nvm/issues/590
Ensuite, installez tout le reste, par projet, avec un package.jsonet npm install.
Pour installer avec zsh et Homebrew:
brew install nvm
Ajoutez ensuite ce qui suit à ~ / .zshrc ou à votre fichier de configuration de shell souhaité:
export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"
Ensuite, installez une version de nœud et utilisez-la.
nvm install 7.10.1
nvm use 7.10.1