Wie liste ich ein privates Github-Repo als "dependency"
In auf package.json
? Ich habe versucht, die Github-URLs- Syntax von npm wie zu verwenden ryanve/example
, aber npm install
im Paketordner werden Fehler für die privaten Abhängigkeiten angezeigt , die nicht installiert werden konnten. Gibt es eine spezielle Syntax (oder einen anderen Mechanismus) für die Abhängigkeit von privaten Repos?
203
"<package>": "git+ssh://[email protected]/<user>/<repo>.git
"package-name": "git+https://<github_token>:[email protected]/<user>/<repo>.git"
hat bei mir nicht funktioniert. Überraschenderweise hat das Wechseln von Token und x-oauth-basic den Job gemacht. Also"package-name": "git+https://x-oauth-basic:<github_token>@github.com/<user>/<repo>.git"
funktioniert für mich. Bitte beachte, dass ich auf Gitlab und nicht auf Github bin.https
Überschreibenx-oauth-basic
als Benutzername ist nicht erforderlich:"package-name": "git+https://<github_token>@github.com/<user>/<repo>.git"
funktioniert auch.Wenn jemand nach einer anderen Option für Git Lab sucht und die oben genannten Optionen nicht funktionieren, haben wir eine andere Option. Bei einer lokalen Installation des Git Lab-Servers haben wir festgestellt, dass der folgende Ansatz es uns ermöglicht, die Paketabhängigkeit einzuschließen. Wir haben dazu ein Zugriffstoken generiert und verwendet.
Wenn man einen Zugriffsschlüssel auf diese Weise verwendet, sollte er natürlich nur über begrenzte Berechtigungen verfügen.
Viel Glück!
quelle
Mit git gibt es ein https-Format
Dieses Format akzeptiert Benutzer + Passwort
Sie können also einen neuen Benutzer erstellen, der nur als Bot verwendet wird, nur so viele Berechtigungen hinzufügen, dass er nur das Repository lesen kann, das Sie in NPM-Module laden möchten, und das direkt in Ihrem
packages.json
Überprüfen Sie im Bereich Bereiche auswählen das On- Repo : Volle Kontrolle über private Repositorys
Auf diese Weise kann das Token auf private Repos zugreifen, die der Benutzer sehen kann
Erstellen Sie nun eine neue Gruppe in Ihrer Organisation, fügen Sie diesen Benutzer der Gruppe hinzu und fügen Sie nur Repositorys hinzu, von denen Sie erwarten, dass sie auf diese Weise abgerufen werden (NUR READ-Berechtigung!).
Sie müssen sicherstellen, dass diese Konfiguration nur auf privates Repo übertragen wird
Dann können Sie dies zu Ihrer / packages.json hinzufügen (Bot-Benutzer ist der Name des Benutzers, xxxxxxxxx ist das generierte persönliche Token)
https://blog.eq8.eu/til/pull-git-private-repo-from-github-from-npm-modules-or-bundler.html
quelle