Skip to content

Commit

Permalink
fix(docs): clean up npm uninstall docs
Browse files Browse the repository at this point in the history
Lots of flags removed, clarification on what `--no-save` does,
consolidated examples into a separate section
  • Loading branch information
wraithgar committed Jan 8, 2021
1 parent eb061ca commit cc0a83a
Showing 1 changed file with 19 additions and 21 deletions.
40 changes: 19 additions & 21 deletions docs/content/commands/npm-uninstall.md
Expand Up @@ -7,7 +7,7 @@ description: Remove a package
### Synopsis

```bash
npm uninstall [<@scope>/]<pkg>[@<version>]... [-S|--save|-D|--save-dev|-O|--save-optional|--no-save]
npm uninstall [<@scope>/]<pkg>[@<version>]... [--no-save]

aliases: remove, rm, r, un, unlink
```
Expand All @@ -17,40 +17,38 @@ aliases: remove, rm, r, un, unlink
This uninstalls a package, completely removing everything npm installed
on its behalf.

Example:
It also removes the package from the `dependencies`, `devDependencies`,
`optionalDependencies`, and `peerDependencies` object in your
`package.json`.

```bash
npm uninstall sax
```
Futher, if you have an `npm-shrinkwrap.json` or `package-lock.json`, npm
will update those files as well.

In global mode (ie, with `-g` or `--global` appended to the command),
it uninstalls the current package context as a global package.

`npm uninstall` takes 3 exclusive, optional flags which save or update
the package version in your main package.json:
`npm uninstall` takes one optional flag, `--no-save` which will tell npm
not to remove the package from your `package.json`,
`npm-shrinkwrap.json`, or `package-lock.json` files

* `-S, --save`: Package will be removed from your `dependencies`.

* `-D, --save-dev`: Package will be removed from your `devDependencies`.

* `-O, --save-optional`: Package will be removed from your `optionalDependencies`.
Scope is optional and follows the usual rules for [`scope`](/using-npm/scope).

* `--no-save`: Package will not be removed from your `package.json` file.
### Examples

Further, if you have an `npm-shrinkwrap.json` then it will be updated as
well.
```bash
npm uninstall sax
```

Scope is optional and follows the usual rules for [`scope`](/using-npm/scope).
sax will no longer be in your `package.json`, `npm-shrinkwrap.json`, or
`package-lock.json` files.

Examples:
```bash
npm uninstall sax --save
npm uninstall @myorg/privatepackage --save
npm uninstall node-tap --save-dev
npm uninstall dtrace-provider --save-optional
npm uninstall lodash --no-save
```

lodash will not be removed fromy your `package.json`,
`npm-shrinkwrap.json`, or `package-lock.json` files.

### See Also

* [npm prune](/commands/npm-prune)
Expand Down

0 comments on commit cc0a83a

Please sign in to comment.