Home Web Front-end JS Tutorial Let's briefly talk about node.js version control nvm and n_node.js

Let's briefly talk about node.js version control nvm and n_node.js

May 16, 2016 pm 03:36 PM
node.js nvm version control

Today’s topic includes 2 parts

1. Use nvm or n for version control under node.js
2. After nvm installs the node.js version, restart the terminal node, and the npm environment variable becomes invalid

Part 1: What to use to manage node.js version

First of all, we should cheer and celebrate that node.js has finally released the historic official version 1.0. Although what we see is V4.0, it is actually the true meaning of node.js 1.0. io.js has lived up to expectations and is completed. Its mission.

Looking back at the development speed of node.js and io.js in the past few years, and the iterative release of various versions, it is necessary for us to use a node.js version management tool to control the node.js version of the current system.

Why do you do this?

The latest V8 engine has been used in the new version. All the new features of ES 6 can be used. Can you bear it?
However, if you upgrade recklessly, the first problem is that your development environment and online release environment may be different, so the consequences will not be much. If something goes wrong, just wait for the boss to come and kill you.
The second problem may be that some previous open source packages need to be recompiled, especially those written in c modules.

So, you need a node.js version management software

What are the popular node.js version managements now?

nvm

We use brew to install nvm

brew install nvm
Copy after login

Note here
After brew is installed, be sure to set it in your bash or zsh configuration file, otherwise when you restart the terminal, you will find that the node and npm environment variables are invalid

Here we want to intersperse the second topic we want to share
Solution to terminal node and npm failure after nvm restarts

If you use the brew installation method above
When the installation is successful, please follow the steps below to set up your shell configuration file

brew info nvm
Copy after login

You will see the following output help message

nvm: stable 0.26.1 (bottled), HEAD
Manage multiple Node.js versions
https://github.com/creationix/nvm
/usr/local/Cellar/nvm/0.26.1 (3173 files, 56M) *
 Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/nvm.rb
==> Caveats
Add NVM's working directory to your $HOME path (if it doesn't exist):

 mkdir ~/.nvm

Copy nvm-exec to NVM's working directory

 cp $(brew --prefix nvm)/nvm-exec ~/.nvm/

Add the following to $HOME/.bashrc, $HOME/.zshrc, or your shell's
equivalent configuration file:

 export NVM_DIR=~/.nvm
 source $(brew --prefix nvm)/nvm.sh

Type `nvm help` for further information.

Bash completion has been installed to:
 /usr/local/etc/bash_completion.d

Copy after login

We need to follow the method provided above and first create a .nvm file in the user update directory

mkdir ~/.nvm

Copy after login

Then copy the nvm-exec file to the .nvm directory you just created

cp $(brew --prefix nvm)/nvm-exec ~/.nvm/
Copy after login

Then edit your bash configuration file $HOME/.bashrc. If you use zsh then edit the $HOME/.zshrc configuration file

nano ~/.bashrc
Copy after login

or

nano ~/.zshrc
Copy after login

Paste the following content into it

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
Copy after login

Finally make your shell configuration take effect in time

source ~/.bashrc
Copy after login

or

`source ~/.zshrc'
Copy after login

Finally, you will no longer have the problem of closing the terminal and restarting, or restarting the machine to find that node, npm and other system environment variables are invalid.

The difference between nvm and n

nvm is similar to Python’s virtualenv or Ruby’s rvm. It is an independently installed software
n is actually an npm global open source package, which needs to be installed globally using npm
n is lighter, but nvm is more independent.

If you have a new computer and you want to use version management, then nvm is your choice because it is an independent software. After installation, you can download and switch the version you need at will.

But n is a package that depends on npm, which means that if your computer environment does not have node / npm, you cannot use n yet.
So when using it, you can weigh it according to your own situation. I personally use nvm to control the node version.

nvm uses

View available versions

nvm ls-remote
Copy after login

View installed version

nvm ls
Copy after login

Install a specified version

nvm install <version>
Copy after login

The version above can specify the version number listed in nvm ls-remote

Delete the specified version

nvm use <version>
Copy after login

n Installation

npm install -g n
Copy after login

Of course, you can also go to github to download your source code and compile it locally

$ git clone https://github.com/visionmedia/n.git
$ cd n
$ [sudo] make install
n 安装指定版本
n stable/laster/< version>

Copy after login

After n, add a symbol stable to identify the latest stable version, laster to identify the latest version, that is, you can specify a version number

n 使用一个版本
n use <version>

n 删除一个版本
n rm <version>
Copy after login

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Java SVN: the guardian of the code repository, ensuring code stability Java SVN: the guardian of the code repository, ensuring code stability Mar 09, 2024 am 09:20 AM

Introduction to SVN SVN (Subversion) is a centralized version control system used to manage and maintain code bases. It allows multiple developers to collaborate on code development simultaneously and provides a complete record of historical modifications to the code. By using SVN, developers can: Ensure code stability and avoid code loss and damage. Track code modification history and easily roll back to previous versions. Collaborative development, multiple developers modify the code at the same time without conflict. Basic SVN Operations To use SVN, you need to install an SVN client, such as TortoiseSVN or SublimeMerge. Then you can follow these steps to perform basic operations: 1. Create the code base svnmkdirHttp://exampl

Python development experience sharing: how to perform version control and release management Python development experience sharing: how to perform version control and release management Nov 23, 2023 am 08:36 AM

Python development experience sharing: How to carry out version control and release management Introduction: In the Python development process, version control and release management are very important links. Through version control, we can easily track code changes, collaborate on development, resolve conflicts, etc.; and release management can help us organize the deployment, testing and release process of code to ensure the quality and stability of the code. This article will share some experiences and practices in Python development from two aspects: version control and release management. 1. Version control version control

PHP code version control and collaboration PHP code version control and collaboration May 07, 2024 am 08:54 AM

PHP code version control: There are two version control systems (VCS) commonly used in PHP development: Git: distributed VCS, where developers store copies of the code base locally to facilitate collaboration and offline work. Subversion: Centralized VCS, a unique copy of the code base is stored on a central server, providing more control. VCS helps teams track changes, collaborate and roll back to earlier versions.

How to perform version control and code management in Java development How to perform version control and code management in Java development Oct 09, 2023 am 08:46 AM

How to perform version control and code management in Java development requires specific code examples. Summary: With the expansion of project scale and the need for team collaboration, version control and code management have become crucial aspects of Java development. This article will introduce the concept of version control, commonly used version control tools, and how to manage code. At the same time, specific code examples will also be provided to help readers better understand and practice. 1. The concept of version control Version control is a way of recording changes in file content so that specific versions of files can be accessed in the future.

Git or version control? Key Differences in PHP Project Management Git or version control? Key Differences in PHP Project Management Mar 10, 2024 pm 01:04 PM

Version Control: Basic version control is a software development practice that allows teams to track changes in the code base. It provides a central repository containing all historical versions of project files. This enables developers to easily rollback bugs, view differences between versions, and coordinate concurrent changes to the code base. Git: Distributed Version Control System Git is a distributed version control system (DVCS), which means that each developer's computer has a complete copy of the entire code base. This eliminates dependence on a central server and increases team flexibility and collaboration. Git allows developers to create and manage branches, track the history of a code base, and share changes with other developers. Git vs Version Control: Key Differences Distributed vs Set

Git must-know secrets: Amazing Java development Git must-know secrets: Amazing Java development Mar 06, 2024 am 08:25 AM

1. Branching and merging Branches allow you to experiment with code changes without affecting the main branch. Use gitcheckout to create a new branch and use it when trying new features or fixing bugs. Once complete, use gitmerge to merge the changes back to the master branch. Sample code: gitcheckout-bnew-feature // Make changes on the new-feature branch gitcheckoutmain gitmergenew-feature2. Staging work Use gitadd to add the changes you want to track to the staging area. This allows you to selectively commit changes without committing all modifications. Sample code: gitaddMyFile.java3

How to implement version control and code collaboration in PHP development? How to implement version control and code collaboration in PHP development? Nov 02, 2023 pm 01:35 PM

How to implement version control and code collaboration in PHP development? With the rapid development of the Internet and the software industry, version control and code collaboration in software development have become increasingly important. Whether you are an independent developer or a team developing, you need an effective version control system to manage code changes and collaborate. In PHP development, there are several commonly used version control systems to choose from, such as Git and SVN. This article will introduce how to use these tools for version control and code collaboration in PHP development. The first step is to choose the one that suits you

C# Development Advice: Version Control and Team Collaboration C# Development Advice: Version Control and Team Collaboration Nov 23, 2023 am 11:02 AM

Version control and team collaboration are crucial in today's software development process. Especially in C# development, due to the large scale of the project and the high complexity of the code, version control and team collaboration are indispensable tools and methods. This article will discuss version control and team collaboration in C# development and give some suggestions. 1. The Importance of Version Control Version control is a method of managing and controlling software code. It can track changes in the project, record the modification history of each developer, and enable multi-person collaborative development. C# projects usually consist of many

See all articles