簡體   English   中英

如何更新從 Git 存儲庫安裝的 NPM 包?

[英]How to update NPM package installed from a Git repository?

我不知道如何更新從 git 存儲庫安裝的包。

假設我在git+ssh://git@gitlab.example.com:project/my-package.git有一個包並且它已經安裝。

現在,如果我:

  1. 推入 my-package master 分支;
  2. 運行 npm i 或 npm update;

然后什么都沒有更新

我認為version字段(來自 my-package 的依賴package.json )可能會引發問題,因此我將其刪除並從頭開始重新安裝該包。 不幸的是它沒有幫助,該軟件包仍未更新。

有任何想法嗎?

好的,伙計們。 令人驚訝的是,似乎不可能讓它開箱即用。

但是有一個解決方法。 感謝@RobC 向我指出一些舊的(尚未解決的)問題: https : //github.com/npm/npm/issues/1727

答案在最后一條評論中:

https://github.com/npm/npm/issues/1727#issuecomment-354124625

基本上,要更新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會花更多的時間,因為它會運行安裝兩次。 但這就是我們現在所擁有的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM