1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-17 07:45:52 +01:00
verdaccio/website/translated_docs/zh-CN/use-cases.md
2018-08-09 08:05:57 +02:00

2.1 KiB
Raw Blame History

id title
use-cases使用-案例) 使用案例

使用私有包

您可以添加用户并管理哪个用户可以访问哪个包。

建议您定义私有包的前缀。例如“local(当地)",这样您私人的东西将如下所示:local-foo。 通过这种方法您可以清楚地把公有包和私有包分开。

从npmjs.org使用公有包

如果一些包没有在存储里服务器将试着从npmjs.org中取它。 如果npmjs.org坏了它会假装没有其他的包存在, 并起到缓存包的作用。 Verdaccio将只下载需要的 (= 由客户要求的)信息, 而且此信息将被缓存这样如果客户再次问同样的事它可以马上作用而不需要问npmjs.org。

例如如果您曾经成功从此服务器请求express@3.0.1哪怕npmjs.org 坏了,您也可以在任何时候再次请求(包含其相关项)。 但是除非有人真正需要express@3.0.0,否则它是不会被下载的。 而且如果npmjs.org脱线此服务器将会说除了express@3.0.1 =只有在缓存里的)外,没有其他的发布。

覆盖公共包

如果您希望使用一些公共包foo的修正版本,您只要把它发布到您的当地服务器,这样当您输入npm install foo,它将考虑安装您的版本。

这里有两个选项:

  1. 您要创建单独的分叉并停止与公共版本同步。

    如果您希望这么做您应该修改配置文件这样verdaccio将不再向npmjs提出此包的请求。 将此包单独添加到config.yaml 中并从proxy列表删除npmjs,然后重启服务器。

    当您在本地发布包,您可能应该从现有版本更高的 string开始这样它就不会和缓存中的现有包冲突。

  2. 您希望临时使用自己的版本,但在它更新后立即切换回公共版本。

    为了避免版本冲突,您应该使用下一个补丁版本的自定义预发行的后缀。 例如,如果公共包有 0.1.2版本您可以上传0.1.3-my-temp-fix。 这样您的包将在原始维护人员更新其公共包到0.1.3之前使用。