2013-05-13 37 views
0

我正在使用我創建的私有模塊。他們被存儲到我的私人git服務器。npm與私有註冊表發佈(git + ssh)

我對於依賴模塊成功地利用設置:

"dependencies" : 
{ 
"mymodule" : "git+ssh://[email protected]/myproject#mybranch" 
} 

現在我感興趣的發佈此模塊的新版本,而無需手動提交這個分支。 這有可能使用類似: NPM --registry的git +的ssh://[email protected]/myproject#mybranch發佈

,以便直接從那裏我用它來把我的本地更新我的分支?

順便把以前的CMD返回此錯誤: 在接下來的foo是我與故宮的adduser創建

npm --registry "git+ssh://[email protected]/myproject#mybranch" publish 
npm WARN package.json [email protected] No README.md file found! 
npm http PUT git+ssh://[email protected]/foo 
npm ERR! Error: Invalid protocol 
npm ERR!  at Request.init (/usr/local/lib/node_modules/npm/node_modules/requ/main.js:302:31) 
npm ERR!  at new Request (/usr/local/lib/node_modules/npm/node_modules/request/main.js:103:8) 
npm ERR!  at request (/usr/local/lib/node_modules/npm/node_modules/request/main.js:956:11) 
npm ERR!  at RegClient.makeRequest (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:208:13) 
npm ERR!  at RegClient.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:117:17) 
npm ERR!  at RetryOperation.attempt (/usr/local/lib/node_modules/npm/node_modules/retry/lib/retry_operation.js:56:8) 
npm ERR!  at RegClient.regRequest [as request] (/usr/local/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:114:13) 
npm ERR!  at RegClient.publish (/usr/local/lib/node_modules/npm/node_module/npm-registry-client/lib/publish.js:51:8) 
npm ERR!  at publish_ (/usr/local/lib/node_modules/npm/lib/publish.js:95:12) 
npm ERR!  at Array.1 (/usr/local/lib/node_modules/npm/node_modules/slide/lib/bind-actor.js:15:8) 

如果有人知道解決這個問題或線索,我會真正的用戶名感謝。

Ostro

回答

0

你可能有一個答案,這個現在 - 所以這是更多的遊客。

經過一段時間的頭痛後,我得出的結論是,從註冊表以外的任何地方安裝節點模塊會導致比解決問題更多的問題。我假設,就像我一樣,您正在尋找一個企業級的工作流程,而不是一個快速解決方案。

我可以建議最好的辦法就是用這個小寶石 - >https://github.com/rlidwka/sinopia

運行的本地NPM註冊表讓你更好的NPM整合。

我擁有的設置是Sinopia支持Git並使用更新後的掛鉤進行連接。

試一試=]