npm 關聯 git包
由於現在項目越做越多,很多公共的部分相互公用,需要盡可能早地提煉出來,這樣便可以在其他項目進行引用,而不是每次建一個項目就需要進行拷貝,這樣太痛苦了,因而想通過類似npm包管理來進行處理
npm 包
- 初始化一個項目
- 定義
package.json- version 版本(注意書寫格式,若是報 invalid version, 便需要審查下了)
- main 用來定義文件地址,用來對外公開的
其他項目關聯包 npm
- package-name: git地址
- git地址定位具體的分支或者標簽
# + 具體的分支/標簽
- git地址定位具體的分支或者標簽
基本上就可以了
目前github推出了對應的包管理系統link
注意
使用git關聯包,迭代不是很方便,需要通過分支或者tag來進行更新,若是只單純地刪除node_modules,依舊無法有效解決,需要刪除本地包緩存,這樣也可以,但是每次更新包,就太麻煩了
下載時 HTTP Basic: Access denied...
在package.json中添加了git包
common-header: "git+http://172.16.0.83/devops/InspireHeader.git#v1.0.3",
...
下載時一直提示

原因因為權限不夠
解決之道
查了很多見解,最終得以解決
雖然
gitlab提供了ssh和http兩種下載方式,但是對http要求高些,下載時需要提供用戶名和密碼,因而才有網上常提供的
1. git config --system --unset credential.helper
git config --global--unset credential.helper
2. git config --global http.emptyAuth true
這幾種方式,但是在npm下載時,是不會提供輸入用戶名和密碼的,不得已將鏈接由
http轉為ssh才得以解決
common-header: "git+ssh:git@172.16.0.83:devops/InspireHeader.git#v1.0.3",
...
- 參考資料
