package.json Git URLs as Dependencies

基本信息
npm版本 5.6.0
yarn版本 1.8.0
node版本 8.9.4
package.json的dependencies部分如下

"dependencies": {
    "baz": "git+http://foo.com/bar/baz.git"
},

问题描述
安装包没有问题,更新有些问题。如果我对这个baz.git进行了新的改动提交后,需要更新的时候。
此时要分情况讨论
情况1 使用yarn初始安装的包

yarn upgrade baz

可以更新 但是会得到一个警告
Downloading the git repo http://foo.com/bar/baz.git over HTTP without a commit hash

情况2 使用npm初始安装的包

npm update baz

什么事情都没有发生 没有成功信息 没有失败信息 没有警告 最怕空气突然的安静
打开node_modules下目录对应的baz包的目录一看 的确什么都没发生 并没有更新

我的努力
读了下Git URLs as Dependencies
可惜并没有得到解惑,因为文中最后一句写着

If neither #<commit-ish> or #semver:<semver> is specified, then master is used.

而我的baz包的git 只有一个master分支啊。。所以没毛病啊

请求的帮助
针对情况1,如何正确的操作/配置 git可以不产生这个警告
针对情况2,如何操作可以正确的更新包

阅读 4.6k
2 个回答
新手上路,请多包涵

兄弟,你这问题,可能是造成了循环安装,也就是你的bar这个包里的package.json里又用了bar这个安装地址,我也最近搭了一个组件库,不知道谁有点皮,给我加上去的导致了这个问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题