Skip to main content

Verwalten des Zugriffs auf andere Repositorys innerhalb deines Codespace

Du kannst die Repositorys verwalten, auf die GitHub Codespaces zugreifen kann.

Übersicht

Standardmäßig wird deinem Codespace ein Token mit der Berechtigung oder einer Berechtigung für das Repository zugewiesen, aus dem er erstellt wurde. Der Bereich dieses Tokens ändert sich unter den folgenden Umständen automatisch.

  • Wenn du einen Codespace für ein Repository erstellst, auf das du nur Lesezugriff hast, führe im Codespace einen Commit durch oder pushe einen neuen Branch. GitHub Codespaces verknüpft deinen Codespace automatisch mit einem neuen oder bestehenden Fork des Repositorys und aktualisiert das Token, um die erforderlichen Berechtigungen für den Fork zu erhalten. Weitere Informationen finden Sie unter AUTOTITLE.
  • Wenn du einen Codespace aus einer Vorlage erstellst und dann den Codespace in einem neuen Repository veröffentlichst, aktualisiert GitHub Codespaces das Token, um Leseberechtigungen und Schreibberechtigungen für das neue Repository zu erhalten. Weitere Informationen finden Sie unter AUTOTITLE.

Weitere Informationen finden Sie unter AUTOTITLE.

Wenn dein Projekt zusätzliche Berechtigungen für andere Repositorys erfordert, kannst du dies wie unter Festlegen zusätzlicher Repositoryberechtigungen weiter unten in diesem Artikel beschrieben in der -Datei konfigurieren. Wenn Berechtigungen in der -Datei aufgeführt sind, wirst du aufgefordert, die zusätzlichen Berechtigungen als Teil der Codespaceerstellung für dieses Repository zu überprüfen und zu autorisieren. Nachdem du die aufgelisteten Berechtigungen autorisiert hast, erinnert sich GitHub Codespaces an deine Auswahl, und fordert nicht die Autorisierung von dir an, sofern sich die Berechtigungen in der -Datei nicht ändern.

Hinweis

Durch das Aktualisieren der Berechtigungen in der -Datei werden die Berechtigungen bestehender Codespaces nicht geändert. Informationen zu zusätzlichen Berechtigungen in einem vorhandenen Codespace findest du unter AUTOTITLE.

Erstellen von Codespaces mit benutzerdefinierten Berechtigungen

Um Codespaces mit benutzerdefinierten Berechtigungen zu erstellen, musst du eine der folgenden Optionen verwenden:

  • Die GitHub-Webbenutzeroberfläche
  • GitHub CLI 2.5.2 oder höher
  •         [GitHub Codespaces Visual Studio Code Erweiterung](https://marketplace.visualstudio.com/items?itemName=GitHub.codespaces) 1.5.3 oder höher
    

Festlegen zusätzlicher Repositoryberechtigungen

Du konfigurierst Repositoryberechtigungen für GitHub Codespaces in einer -Datei. Alle benutzerdefinierten Berechtigungen, die Sie hinzufügen oder ändern, gelten nur für neue Codespaces, die erstellt wurden, nachdem Ihre Änderungen an das Repository gebunden wurden. Wenn Sie Berechtigungen aus einem Codespace hinzufügen oder ändern, gelten diese Berechtigungen nicht für den aktuellen Codespace, auch wenn Sie den Codespace neu erstellen.

  1. Wenn dein Repository noch keine -Datei enthält, füge jetzt eine hinzu. Weitere Informationen finden Sie unter AUTOTITLE.

  2. Bearbeite die -Datei, wobei du den Repositorynamen und -berechtigungen hinzufügst, die für das -Objekt erforderlich sind:

    JSON
    {
      "customizations": {
        "codespaces": {
          "repositories": {
            "my_org/my_repo": {
              "permissions": {
                "issues": "write"
              }
            }
          }
        }
      }
    }
    

    Hinweis

    • Sie können nur auf Repositorys verweisen, die zu demselben persönlichen Konto oder der Organisation gehören wie das Repository, in dem Sie derzeit arbeiten.
    • Sie können den Platzhalter verwenden, um Berechtigungen für mehrere Repositorys in einer Organisation zu erteilen. Um z. B. Berechtigungen für alle Repositorys in der Organisation zu erteilen, verwenden Sie . Diese Syntax ist nur für Codespaces gültig. In allen Dateien, die für Prebuilds verwendet werden, müssen Sie Berechtigungen für jedes Repository separat definieren. Weitere Informationen finden Sie unter AUTOTITLE.

    Du kannst für jedes aufgelistete Repository so viele oder wenige Berechtigungen erteilen wie im Folgenden aufgelistet:

    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Lesen/Schreiben
    • : Schreiben

    Zur Festlegung einer Berechtigung für ein Repository in einer Organisation musst du den Namen des Repositorys explizit im -Objekt hinzufügen.

    {
      "customizations": {
        "codespaces": {
          "repositories": {
            "my_org/my_repo": {
              "permissions": {
                "issues": "write"
              }
            }
          }
        }
      }
    }
    

    Um alle Berechtigungen für ein bestimmtes Repository festzulegen, benutze oder im Repositoryobjekt.

    {
      "customizations": {
        "codespaces": {
          "repositories": {
            "my_org/my_repo": {
              "permissions": "write-all"
            }
          }
        }
      }
    }
    

Autorisieren angeforderter Berechtigungen

Wenn zusätzliche Repositoryberechtigungen in der -Datei definiert sind, wirst du aufgefordert, die Berechtigungen zu überprüfen und optional zu autorisieren, wenn du einen Codespace oder eine Präbuildkonfiguration für dieses Repository erstellst. Wenn du Berechtigungen für ein Repository autorisierst, fordert GitHub Codespaces dich nicht erneut auf, sofern der Satz angeforderter Berechtigungen für das Repository sich nicht geändert hat.

Screenshot der Berechtigungsanfragen-Seite. Zwei Berechtigungen werden als angefordert angezeigt: die Leseberechtigung für Metadaten und die Schreibberechtigung für Issues.

Du solltest nur Berechtigungen für Repositorys autorisieren, die du kennst und denen du vertraust. Wenn du dem Satz angeforderter Berechtigungen nicht vertraust, klicke auf Fortfahren ohne Autorisierung, um den Codespace mit dem Basissatz von Berechtigungen zu erstellen. Das Ablehnen zusätzlicher Berechtigungen kann sich auf die Funktionalität deines Projekts innerhalb des Codespace auswirken, da der Codespace nur Zugriff auf das Repository hat, aus dem es erstellt wurde.

Du kannst nur Berechtigungen autorisieren, die dein persönliches Konto bereits besitzt. Wenn ein Codespace Berechtigungen für Repositorys anfordert, auf die du derzeit keinen Zugriff hast, wende dich an einen Besitzer oder Administrator des Repositorys, um ausreichenden Zugriff zu erhalten, und versuche dann erneut, einen Codespace zu erstellen.

Weiterführende Lektüre

  • AUTOTITEL
  • AUTOTITEL