通過git安裝npm私有模組

ltinyho發表於2017-09-12

需求分析

在日常專案中,會有幾個專案共同的元件或者工具函式庫。這些程式碼如果在各個專案中都copy一份的話,如果有需要改動的話,oh,要累死去。
本著DPR的原則,需要一種可以管理公用程式碼的方法。並且程式碼中有些是公司內部業務邏輯,這肯定不能釋出成公用包。所以需要一種私有包管理方案。

可選方案

  • 1、npm官方私有包,需要收費,pass

  • 2、搭建npm私有伺服器,還沒有這個必要,pass

  • 3、使用 npm 安裝 git 倉庫 簡單便利

  • 4、使用 gitsubmodule,在主倉庫中巢狀子倉庫

npm 安裝 git 倉庫

因為github私有倉庫需要收費,這裡我使用碼雲建立免費私有 git 倉庫。
在專案中直接 npm 安裝私有倉庫,示例:

npm install git+ssh://git@github.com:ltinyho/test.git 

可以使用npm install --help檢視install命令(npm@5.3.0)

 npm install (with no args, in package dir)
 npm install [<@scope>/]<pkg>
 npm install [<@scope>/]<pkg>@<tag>
 npm install [<@scope>/]<pkg>@<version>
 npm install [<@scope>/]<pkg>@<version range>
 npm install <folder>
 npm install <tarball file>
 npm install <tarball url>
 npm install <git:// url>
 npm install <github username>/<github project>

從git安裝可以選擇標籤|分支|commit,最好更該程式碼後修改倉庫中package.json版本資訊

   npm install <github username>/<github project>#<tag|branch|commit>

git submodule 倉庫巢狀

git submodule add <倉庫地址> <檔案路徑>
在專案根目錄生成`.gitmodules`檔案,記錄子模組的資訊

新專案安裝或者更新

git submodule init 
git submodule update 

相關文章