Ich entwickle einige private Projekte auf Github und möchte meinen Bereitstellungsservern nächtliche Cronjobs hinzufügen, um die neueste Version von Github abzurufen. Ich mache dies derzeit, indem ich auf jedem Bereitstellungsserver Schlüsselpaare generiere und den öffentlichen Schlüssel zum Github-Projekt als "Bereitstellungsschlüssel" hinzufüge.
Ich habe jedoch kürzlich herausgefunden, dass diese Bereitstellungsschlüssel tatsächlich Schreibzugriff auf das Projekt haben. Daher könnte möglicherweise jeder Serveradministrator mit der Bearbeitung beginnen. Außerdem kann ich jeden Bereitstellungsschlüssel nur einem Repository hinzufügen, während ich mehrere Repositorys auf ein und demselben Bereitstellungsserver bereitstellen möchte.
Gibt es eine Möglichkeit, ausgewählten Benutzern auf Github schreibgeschützten Zugriff für private Repositorys zu gewähren?
quelle
git://
anstelle vonssh://
(ssh+git://
) das Protokoll verwenden .Antworten:
Ich bin der festen Überzeugung, dass Sie mit der (relativ neuen) Funktion "Organisationen" Personen mit schreibgeschütztem Zugriff auf ein privates Repository hinzufügen können.
quelle
Wenn Sie diese Frage haben, wissen Sie, dass Sie heutzutage tatsächlich schreibgeschützte Bereitstellungsschlüssel erstellen können:
https://github.com/blog/2024-read-only-deploy-keys
Sie können weiterhin Bereitstellungsschlüssel mit Schreibzugriff erstellen, müssen diese Berechtigung jedoch explizit beim Hinzufügen des Schlüssels erteilen.
quelle
Für Organisationen: Ich schlage vor, ein neues Team speziell für den Benutzer zu erstellen. Dieses Team kann dann schreibgeschützten Zugriff auf die von Ihnen angegebenen Repositorys gewähren. Ich hoffe das hilft!
quelle
Ich weiß, dass es bei den Fragen um Github geht, aber vielleicht wäre es für einige Leser schön zu wissen, dass dies in Gitlab und kostenlos möglich ist. Überprüfen Sie https://gitlab.com/help/user/permissions . Ich verbringe einige Zeit mit Github, ohne meine Zwecke vollständig zu erfüllen. Wenn ich das gewusst hätte, hätte ich dieses spezielle Projekt mit gitlab gestartet.
quelle