npm 如何在不更新其他 Package 的情况下“添加Yarn”?

insrf1ej  于 2023-01-09  发布在  其他
关注(0)|答案(2)|浏览(174)

我写了一些完全没有依赖关系的包,我把这些包放在我的私人Gitlab上,我想用yarn add GIT_URL_TO_PACKAGE --module-folder=my_module安装它们,问题是每次我添加一个新包,yarn都会安装package.json中的所有其他包,但我只想安装命令中指定的包。
是否有yarn add的选项或一些技巧?
参考:
我只想要一个"package manager"从我的私人Gitlab下载代码并记录包标签/version/sha1。Yarn只是一个突然出现在我脑海中的工具,如果npm或其他包管理器可以做到这些,我很乐意切换到那个。

dgtucam1

dgtucam11#

老问题,但今天仍然相关。
我创建了yarn-add-no-save来实现这个功能,它可以本地安装到项目中,也可以全局安装:

$ yarn add yarn-add-no-save --dev
# or
$ yarn global add yarn-add-no-save

安装后,您只需运行:

$ yarn add-no-save <packages> # (yarn-add-no-save when installed globally)

我的用例是测试声明peerDependencies的模块,这样工具就有一些选项来自动安装它们,以查看所有选项的运行情况:

$yarn add-no-save --help

注意:我知道保存一个包来安装包而不保存它们是具有讽刺意味的,基本上违背了目的,但这是我能想出的最好的,它符合我的需要。

k3bvogb1

k3bvogb12#

yarn install --check-files验证node_modules中已安装的文件是否未被删除。
yarn install --flat安装所有的依赖项,但是每个包只允许一个版本。在第一次运行时,这会提示您为每个依赖于多个版本范围的包选择一个版本。这些版本将被添加到package.json的resolution字段下。

相关问题