summaryrefslogtreecommitdiff
path: root/deps/npm/man/man7/scope.7
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2019-10-08 08:57:31 -0700
committerMyles Borins <mylesborins@google.com>2019-12-13 11:51:53 -0500
commitf9b31edb25fcdf6602fbf8233affb791e2f849a5 (patch)
tree5e6c1818de1b32158c7f3c491bf2f87392e79ccb /deps/npm/man/man7/scope.7
parent0621e25f90c4b3bbea5b2e4f63b3ea919e47440c (diff)
downloadnode-new-f9b31edb25fcdf6602fbf8233affb791e2f849a5.tar.gz
deps: update npm to 6.13.4
PR-URL: https://github.com/nodejs/node/pull/30904 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Diffstat (limited to 'deps/npm/man/man7/scope.7')
-rw-r--r--deps/npm/man/man7/scope.7136
1 files changed, 136 insertions, 0 deletions
diff --git a/deps/npm/man/man7/scope.7 b/deps/npm/man/man7/scope.7
new file mode 100644
index 0000000000..933e2e23c7
--- /dev/null
+++ b/deps/npm/man/man7/scope.7
@@ -0,0 +1,136 @@
+.TH "SCOPE" "7" "December 2019" "" ""
+.SH "NAME"
+\fBscope\fR \- Scoped packages
+.SS Description
+.P
+All npm packages have a name\. Some package names also have a scope\. A scope
+follows the usual rules for package names (URL\-safe characters, no leading dots
+or underscores)\. When used in package names, scopes are preceded by an \fB@\fP symbol
+and followed by a slash, e\.g\.
+.P
+.RS 2
+.nf
+@somescope/somepackagename
+.fi
+.RE
+.P
+Scopes are a way of grouping related packages together, and also affect a few
+things about the way npm treats the package\.
+.P
+Each npm user/organization has their own scope, and only you can add packages
+in your scope\. This means you don't have to worry about someone taking your
+package name ahead of you\. Thus it is also a good way to signal official packages
+for organizations\.
+.P
+Scoped packages can be published and installed as of \fBnpm@2\fP and are supported
+by the primary npm registry\. Unscoped packages can depend on scoped packages and
+vice versa\. The npm client is backwards\-compatible with unscoped registries,
+so it can be used to work with scoped and unscoped registries at the same time\.
+.SS Installing scoped packages
+.P
+Scoped packages are installed to a sub\-folder of the regular installation
+folder, e\.g\. if your other packages are installed in \fBnode_modules/packagename\fP,
+scoped modules will be installed in \fBnode_modules/@myorg/packagename\fP\|\. The scope
+folder (\fB@myorg\fP) is simply the name of the scope preceded by an \fB@\fP symbol, and can
+contain any number of scoped packages\.
+.P
+A scoped package is installed by referencing it by name, preceded by an
+\fB@\fP symbol, in \fBnpm install\fP:
+.P
+.RS 2
+.nf
+npm install @myorg/mypackage
+.fi
+.RE
+.P
+Or in \fBpackage\.json\fP:
+.P
+.RS 2
+.nf
+"dependencies": {
+ "@myorg/mypackage": "^1\.3\.0"
+}
+.fi
+.RE
+.P
+Note that if the \fB@\fP symbol is omitted, in either case, npm will instead attempt to
+install from GitHub; see npm help \fBinstall\fP\|\.
+.SS Requiring scoped packages
+.P
+Because scoped packages are installed into a scope folder, you have to
+include the name of the scope when requiring them in your code, e\.g\.
+.P
+.RS 2
+.nf
+require('@myorg/mypackage')
+.fi
+.RE
+.P
+There is nothing special about the way Node treats scope folders\. This
+simply requires the \fBmypackage\fP module in the folder named \fB@myorg\fP\|\.
+.SS Publishing scoped packages
+.P
+Scoped packages can be published from the CLI as of \fBnpm@2\fP and can be
+published to any registry that supports them, including the primary npm
+registry\.
+.P
+(As of 2015\-04\-19, and with npm 2\.0 or better, the primary npm registry
+\fBdoes\fR support scoped packages\.)
+.P
+If you wish, you may associate a scope with a registry; see below\.
+.SS Publishing public scoped packages to the primary npm registry
+.P
+To publish a public scoped package, you must specify \fB\-\-access public\fP with
+the initial publication\. This will publish the package and set access
+to \fBpublic\fP as if you had run \fBnpm access public\fP after publishing\.
+.SS Publishing private scoped packages to the npm registry
+.P
+To publish a private scoped package to the npm registry, you must have
+an npm Private Modules \fIhttps://docs\.npmjs\.com/private\-modules/intro\fR
+account\.
+.P
+You can then publish the module with \fBnpm publish\fP or \fBnpm publish
+\-\-access restricted\fP, and it will be present in the npm registry, with
+restricted access\. You can then change the access permissions, if
+desired, with \fBnpm access\fP or on the npmjs\.com website\.
+.SS Associating a scope with a registry
+.P
+Scopes can be associated with a separate registry\. This allows you to
+seamlessly use a mix of packages from the primary npm registry and one or more
+private registries, such as npm Enterprise\.
+.P
+You can associate a scope with a registry at login, e\.g\.
+.P
+.RS 2
+.nf
+npm login \-\-registry=http://reg\.example\.com \-\-scope=@myco
+.fi
+.RE
+.P
+Scopes have a many\-to\-one relationship with registries: one registry can
+host multiple scopes, but a scope only ever points to one registry\.
+.P
+You can also associate a scope with a registry using \fBnpm config\fP:
+.P
+.RS 2
+.nf
+npm config set @myco:registry http://reg\.example\.com
+.fi
+.RE
+.P
+Once a scope is associated with a registry, any \fBnpm install\fP for a package
+with that scope will request packages from that registry instead\. Any
+\fBnpm publish\fP for a package name that contains the scope will be published to
+that registry instead\.
+.SS See also
+.RS 0
+.IP \(bu 2
+npm help install
+.IP \(bu 2
+npm help publish
+.IP \(bu 2
+npm help access
+.IP \(bu 2
+npm help registry
+
+.RE