2016-09-22 49 views
1

對於我所有的東西,我使用公共npm註冊表,但是我目前正在使用的一個客戶端剛剛安裝了sinopia,並且希望將其用於在站點上託管的私有模塊。使用多個npm註冊表和用戶帳戶

這是好的,但我用我的筆記本電腦在不同的地方,我真的不希望永久配合自己這個註冊表,所以我們設置每個我們這裏使用的默認情況下使用自定義註冊表回購:

"publishConfig": { 
    "scope": "@somecompany", 
    "registry": "http://sinopia-box:4873/" 
    } 

這將綁定我正在使用該註冊表的回購是偉大的,但我需要驗證自己與它,所以我需要在那裏設置一個用戶,並且所有後續發佈此回購將需要使用此創建用戶帳戶,但是我只想在我使用該存儲庫時使用該帳戶。

那麼有沒有辦法能夠保持正常npm註冊表作爲默認與我的npm用戶帳戶(它已經保存在本地),但不知何故只是註冊該註冊表的用戶帳戶,所以當它通過發佈到它通過npm publish與該定製publishConfig它只是知道註冊表並自動使用正確的用戶帳戶。

由於我不想處於每天早上必須進來的位置並將註冊表設置爲該帳戶並使用其他帳戶,然後回家並將其重置爲公共npm註冊表,我只想要讓npm知道該註冊表的用戶,然後忘記它,那麼無論如何有我的蛋糕,並在這裏吃?

回答

1

原來所有你需要做的是:

npm login --registry=http://myreg.mycompany.com:8080 [email protected]

這告訴NPM您要使用該註冊登錄,所以這樣你可以根據需要對不同的註冊表添加儘可能多的用戶。

(您不需要的範圍,但因爲大多數公司將使用示波器其值得注意)

+0

這是一次和完成的命令? –

+1

是的,你在命令行上執行過一次,並將它註冊到你的npm配置中,所以你的註冊表保持不變,但是如果你要使用其他註冊表(即通過顯式的package.json配置更改),它將使用這已知的登錄。你可以通過執行上述操作來驗證這一點,然後執行'npm config獲取註冊表'並且它不會改變 – Grofit