238 lines
3.8 KiB
Markdown
238 lines
3.8 KiB
Markdown
# nvm
|
|
|
|
|
|
|
|
nvm est un gestionnaire de version pour Node.
|
|
|
|
|
|
|
|
### Installation
|
|
|
|
#### Avec Homebrew:
|
|
|
|
Installer nvm:
|
|
|
|
```bash
|
|
$ brew install nvm
|
|
```
|
|
|
|
Créer un répertoire où sera installé les différentes versions de Node.
|
|
|
|
```bash
|
|
$ mkdir ~/.nvm
|
|
```
|
|
|
|
Editer .bash_profile pour régler le répertoire NVM_DIR
|
|
|
|
```bash
|
|
$ nano ~/.bash_profile
|
|
```
|
|
|
|
et ajouter les lignes suivantes.
|
|
|
|
```bash
|
|
export NVM_DIR=~/.nvm
|
|
source $(brew --prefix nvm)/nvm.sh
|
|
```
|
|
|
|
Recharger le shell pour activer nvm.
|
|
|
|
```bash
|
|
$ source ~/.bash_profile
|
|
|
|
$ echo $NVM_DIR
|
|
$ nvm --version
|
|
```
|
|
|
|
|
|
|
|
#### Avec git (méthode officielle):
|
|
|
|
```bash
|
|
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
|
|
```
|
|
|
|
Le script d'installation ajoute les lignes suivantes à votre profil (`~/.bash_profile`, `~/.zshrc`, `~/.profile`, or `~/.bashrc`).
|
|
|
|
```bash
|
|
export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"
|
|
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
|
```
|
|
|
|
#### Mettre à jour:
|
|
|
|
Relancer le script d'installation
|
|
|
|
```bash
|
|
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### Utilisation:
|
|
|
|
Installer NodeJS.
|
|
|
|
```bash
|
|
# la dernière version 8
|
|
$ nvm install 8
|
|
|
|
# la version 8.9.4
|
|
$ nvm install 8.9.4
|
|
|
|
# la dernière version 6
|
|
$ nvm install 6
|
|
|
|
# la dernière version LTS (v10)
|
|
$ nvm install --lts=dubnium
|
|
```
|
|
|
|
Mettre à jour NodeJS et réinstaller les paquets.
|
|
|
|
```bash
|
|
Latest version:
|
|
nvm install node --reinstall-packages-from=node
|
|
# nvm install node && nvm reinstall-packages $(nvm current | sed 's/^.//')
|
|
|
|
Stable (LTS) version:
|
|
nvm install lts/* --reinstall-packages-from=node
|
|
# nvm install --lts=erbium && nvm reinstall-packages $(nvm current | sed 's/^.//')
|
|
# nvm install --lts=erbium && nvm reinstall-packages 12.18.3
|
|
```
|
|
|
|
Liste des versions de Node installées:
|
|
|
|
```bash
|
|
$ nvm ls
|
|
# ou
|
|
$nvm list
|
|
-> v8.11.4
|
|
v10.9.0
|
|
default -> 8 (-> v8.11.4)
|
|
node -> stable (-> v10.9.0) (default)
|
|
stable -> 10.9 (-> v10.9.0) (default)
|
|
iojs -> N/A (default)
|
|
lts/* -> lts/carbon (-> v8.11.4)
|
|
lts/argon -> v4.9.1 (-> N/A)
|
|
lts/boron -> v6.14.4 (-> N/A)
|
|
lts/carbon -> v8.11.4
|
|
```
|
|
|
|
Liste des versions de Node installables:
|
|
|
|
```bash
|
|
$ nvm ls-remote
|
|
v0.1.14
|
|
v0.1.15
|
|
.../...
|
|
v12.12.0
|
|
v12.13.0 (LTS: Erbium)
|
|
-> v12.13.1 (Latest LTS: Erbium)
|
|
v13.0.0
|
|
v13.0.1
|
|
v13.1.0
|
|
v13.2.0
|
|
```
|
|
|
|
Versions téléchargées:
|
|
|
|
```bash
|
|
$ cd $NVM_DIR
|
|
- OR -
|
|
$ cd ~/.nvm
|
|
$ ls versions/node
|
|
v10.9.0 v8.11.4
|
|
```
|
|
|
|
Version en usage:
|
|
|
|
```bash
|
|
$ node -v
|
|
v8.11.4
|
|
```
|
|
|
|
Changer de version:
|
|
|
|
```bash
|
|
$ nvm use 10.9.0
|
|
Now using node v10.9.0 (npm v6.2.0)
|
|
$ nvm use 10
|
|
Now using node v10.9.0 (npm v6.2.0)
|
|
$ node -v
|
|
v10.9.0
|
|
```
|
|
|
|
```bash
|
|
$ nvm use 8.11.4
|
|
Now using node v8.11.4 (npm v5.6.0)
|
|
$ node -v
|
|
v8.11.4
|
|
```
|
|
|
|
```bash
|
|
$ nvm use --lts
|
|
Now using node v8.11.4 (npm v5.6.0)
|
|
```
|
|
|
|
Changer la version par défaut (résiste à un changement de fenêtre du terminal):
|
|
|
|
```bash
|
|
$ nvm alias default 10.15.0
|
|
default -> 10.15.0 (-> v10.15.0)
|
|
```
|
|
|
|
Réinstaller les paquets d'une ancienne version après une mise-à jour:
|
|
|
|
```bash
|
|
$ nvm current
|
|
v8.11.4
|
|
$ nvm install --lts=dubnium
|
|
Now using node v10.15.0 (npm v6.4.1)
|
|
|
|
$ nvm reinstall-packages 8
|
|
|
|
# update 12.13.1 depuis 12.13.0
|
|
$ nvm reinstall-packages 12.13.0
|
|
```
|
|
|
|
Désinstaller une version de Node:
|
|
|
|
```bash
|
|
$ nvm uninstall 10.16.2
|
|
Uninstalled node v10.16.2
|
|
|
|
$ nvm uninstall --lts=carbon
|
|
Uninstalled node v8.17.0
|
|
```
|
|
|
|
Les paquets sont installés dans:
|
|
|
|
```bash
|
|
bruno@silverbook: ~/.nvm/versions/node/v10.16.3/lib/node_modules $ ls
|
|
ezshare npm
|
|
|
|
bruno@silverbook: ~/.nvm/versions/node/v10.16.2/lib/node_modules $ ls
|
|
npm
|
|
```
|
|
|
|
|
|
|
|
### Erreur:
|
|
|
|
```bash
|
|
# A l'ouverture d'une fenêtre bash
|
|
|
|
N/A: version "N/A -> N/A" is not yet installed.
|
|
|
|
You need to run "nvm install N/A" to install it before using it.
|
|
```
|
|
|
|
Entrer:
|
|
|
|
```bash
|
|
$ nvm alias default 12
|
|
```
|
|
|