2

因此,在我的 package.json 中,我有一堆 npm 库,以及一个从 git ssh url 中提取的私有 repo,它需要始终是最新版本。yarn.lock 添加了 git sha 和 yarn upgrade 等不会抢到最新的。

基本上,鉴于此:

"dependencies": {
  "some-package"        : "^0.x.x",
  "some-other-package"  : "*",
  "my-private-git-repo" : "git+ssh://git@bitbucket.org/me/myrepo.git",
  "lastlibrary"         : "^4.0.3"
},

我希望 yarn.lock 或 npm shrinkwrap 忽略my-private-git-repo

这可能吗?

4

1 回答 1

1

好吧,我设法通过使用 Perl 从文件本身中删除缓存条目来解决这个问题。

鉴于我的 package.json 有这个:

"postinstall": "bash ./scripts/after_install.sh",

after_install.sh现在有这个:

perl -0777 -i -pe 's/(?s)"myrepo.*?\n\n//s' ./yarn.lock

于 2017-05-11T18:42:48.363 回答