mirror of
https://github.com/nodejs/node.git
synced 2025-05-13 02:59:02 +00:00

This will also use a proper indentation as a couple of entries had a extra indentation of two spaces. PR-URL: https://github.com/nodejs/node/pull/17722 Reviewed-By: Jon Moss <me@jonathanmoss.me> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
71 lines
1.3 KiB
Markdown
71 lines
1.3 KiB
Markdown
# Maintaining npm in Node.js
|
|
|
|
## Step 1: Clone npm
|
|
|
|
```console
|
|
$ git clone https://github.com/npm/npm.git
|
|
$ cd npm
|
|
```
|
|
|
|
or if you already have npm cloned make sure the repo is up to date
|
|
|
|
```console
|
|
$ git remote update -p
|
|
$ git reset --hard origin latest
|
|
```
|
|
|
|
## Step 2: Build release
|
|
|
|
```console
|
|
$ git checkout vX.Y.Z
|
|
$ make release
|
|
```
|
|
|
|
Note: please run `npm dist-tag ls npm` and make sure this is the `latest`
|
|
**dist-tag**. `latest` on git is usually released as `next` when it's time to
|
|
downstream
|
|
|
|
## Step 3: Remove old npm
|
|
|
|
```console
|
|
$ cd /path/to/node
|
|
$ git remote update -p
|
|
$ git checkout -b npm-x.y.z origin/master
|
|
$ cd deps
|
|
$ rm -rf npm
|
|
```
|
|
|
|
## Step 4: Extract and commit new npm
|
|
|
|
```console
|
|
$ tar zxf /path/to/npm/release/npm-x.y.z.tgz
|
|
$ git add -A npm
|
|
$ git commit -m "deps: upgrade npm to x.y.z"
|
|
$ cd ..
|
|
```
|
|
|
|
## Step 5: Update licenses
|
|
|
|
```console
|
|
$ ./configure
|
|
$ make -j4
|
|
$ ./tools/license-builder.sh
|
|
# The following commands are only necessary if there are changes
|
|
$ git add .
|
|
$ git commit -m "doc: update npm LICENSE using license-builder.sh"
|
|
```
|
|
|
|
Note: please ensure you are only making the updates that are changed by npm.
|
|
|
|
## Step 6: Apply Whitespace fix
|
|
|
|
```console
|
|
$ git rebase --whitespace=fix master
|
|
```
|
|
|
|
## Step 7: Test the build
|
|
|
|
```console
|
|
$ make test-npm
|
|
```
|