Ich habe eine Knotenanwendung auf Github in einem privaten Repository. Diese Knotenanwendung verfügt auch über benutzerdefinierte Module, die ich erstellt habe, und sie befinden sich in einem separaten privaten Repository.Mehrere github private npm-Repositorys auf einem Server
Dies ist das Beispiel Knoten-Anwendung url:
[email protected]:thomas/node-application.git
Diese sind beide Knotenmodule, die Knoten-Anwendung verwendet.
[email protected]:thomas/node-module1.git
[email protected]:thomas/node-module2.git
Sie können Folgendes verwenden, um ein privates NPM-Modul auf Github zu installieren.
npm install git+ssh://[email protected]:thomas/node_module1.git
Damit dies funktioniert, muss die Maschine SSH-Schlüssel eingerichtet haben.
Mein lokaler Rechner hat meine github Benutzerschlüssel eingerichtet und Zugriff auf alle meine Repos.
Auf meinem Server verwende ich jedoch Deploy Keys. Der einzige Weg, wie ich mehrere Deployment-Schlüssel verwenden kann, ist wie folgt.
Host na.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-application
ForwardAgent yes
Host nm1.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-module1
ForwardAgent yes
Host nm2.github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-module2
ForwardAgent yes
Also würde ich brauchen, um die Module auf dem Server mit
npm install git+ssh://[email protected]:thomas/node_module1.git
^^^
installieren Was bedeutet, dass die Produktion und Entwicklung Abhängigkeiten anders wäre
"node-module": "git+ssh://[email protected]:thomas/node-module1.git"
vs
"node-module": "git+ssh://[email protected]:thomas/node-module1.git"
^^^
Dies könnte funktionieren, wenn ich so etwas tun könnte ...
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/gh_node-application
IdentityFile ~/.ssh/gh_node-module1
IdentityFile ~/.ssh/gh_node-module2
ForwardAgent yes
ging ich die Strecke von [Maschinen Benutzer] (https://help.github.com/articles/managing-deploy-keys). Was ich wirklich hasse XD – ThomasReggi
Haben Sie versucht, Ihre Bereitstellungsschlüssel zu Ihrem GitHub-Account hinzuzufügen? Mit allen zu Ihrem Konto hinzugefügten Schlüsseln können Sie auf Ihre privaten Pakete zugreifen. Diese Lösung ist nur wirksam, wenn nicht zu viele Schlüssel vorhanden sind und sie sich nicht zu häufig ändern. – vmx