Хорошо, ребята. Удивительно, но кажется невозможным заставить его работать «из коробки».
Но есть обходной путь. Спасибо @ Rob C за указание на какую-то старую (пока не решенную) проблему: https://github.com/npm/npm/issues/1727
Ответ в последнем комментарии:
https://github.com/npm/npm/issues/1727#issuecomment -354124625
По существу, для обновления a git вы должны переустановить напрямую, используя: npm install package-name
.
Пример. Скажем, у вас уже установлен пакет и добавлен к зависимостям, как это:
{
"dependencies": {
"my-package": "git+ssh://git@gitlab.my.com:prj/my-package.git"
}
}
Теперь, чтобы обновлять его всякий раз, когда вы запускаете npm i
, все, что вам нужно сделать, это создать скрипт postinstall
, который будет вызывать npm i my-package
:
{
"dependencies": {
"my-package": "git+ssh://git@gitlab.my.com:prj/my-package.git"
},
"scripts": {
"postinstall": "npm update && npm i my-package"
}
}
Теперь npm i
будет занимать больше времени, так как он запустит установку дважды. Но это то, что мы имеем сейчас.