GitHub-Repository spiegeln

In diesem Thema wird beschrieben, wie Sie ein GitHub-Repository nach Cloud Source Repositories spiegeln. Bei dieser Konfiguration werden Commits, die Sie in das GitHub-Repository übertragen, in ein Repository kopiert bzw. gespiegelt, das in Cloud Source Repositories gehostet wird.

Nur Bitbucket Cloud- und GitHub Cloud-Repositories können in Cloud Source Repositories gespiegelt werden. Selbstgehostete Bitbucket- und GitHub-Spiegelungen werden nicht unterstützt.

Wenn Sie Ihr GitHub-Repository zur Einbindung in Cloud Build in Cloud Source Repositories spiegeln und keine weiteren Cloud Source Repositories-Features benötigen, folgen Sie stattdessen der Cloud Build-Anleitung zum Erstellen von Repositories aus GitHub.

Hinweise

Wenn Sie ein Repository spiegeln, müssen Sie Ihre Anmeldedaten für die GitHub-Authentifizierung angeben. Mit diesen Anmeldedaten kann Cloud Source Repositories auf die Inhalte des GitHub-Repositorys zugreifen.

Wenn Sie GitHub-Organisationen nutzen, wird empfohlen, ein Computernutzerkonto zu verwenden, das speziell für automatisierte Aufgaben wie das Spiegeln eines Repositorys vorgesehen ist. Diesem Konto muss administrativer Zugriff auf Ihr Repository gewährt worden sein.

GitHub-Repository spiegeln

In diesem Abschnitt wird beschrieben, wie Sie ein GitHub-Repository nach Cloud Source Repositories spiegeln.

Gespiegeltes Repository erstellen

Bei diesem Vorgang benötigen Sie die Anmeldedaten für Ihre GitHub-Maschine, um Google Cloud Lesezugriff auf das GitHub-Repository zu gewähren.

  1. Öffnen Sie Cloud Source Repositories in der Google Cloud Console.

    Cloud Source Repositories öffnen

  2. Klicken Sie auf Repository hinzufügen.

    Die Seite Repository hinzufügen wird geöffnet.

  3. Wählen Sie Externes Repository verbinden aus und klicken Sie auf Weiter.

    Die Seite Externes Repository verbinden wird geöffnet.

  4. Wählen Sie in der Drop-down-Liste Projekt das Google Cloud-Projekt aus, zu dem das gespiegelte Repository gehört.

    Wenn Sie kein Projekt haben, können Sie auf Projekt erstellen klicken, um ein Projekt zu erstellen.

  5. Wählen Sie in der Drop-down-Liste Git-Provider GitHub aus.

  6. Klicken Sie das Kästchen an, um Cloud Source Repositories zum Speichern Ihrer Anmeldedaten zu autorisieren.

  7. Klicken Sie auf Verbindung zu GitHub herstellen.

  8. Melden Sie sich mit den Nutzeranmeldedaten für Ihren Computer bei GitHub an.

  9. Klicken Sie auf Google Cloud Platform autorisieren.

    Diese Option gewährt Google Cloud Lesezugriff auf alle Repositories im GitHub-Nutzerkonto.

    Nach Abschluss der Autorisierung werden Sie zur Seite Externes Repository verbinden zurückgeleitet. Es wird eine Liste der Repositories geöffnet.

  10. Wählen Sie in der Liste der Repositories das Repository aus, das Sie spiegeln möchten.

  11. Klicken Sie auf Ausgewähltes Repository verbinden.

    Die Hauptseite des Repositorys wird geöffnet. Diese Seite enthält eine Liste der Repositories für dieses Google Cloud-Projekt, darunter das Repository, das Sie gerade erstellt haben.

GitHub-Repositories identifizieren

Bei Cloud Source Repositories ist eindeutig erkennbar, welche Ihrer Repositories Spiegel von GitHub-Repositories sind:

  • Jedes GitHub-Repository wird durch das GitHub-Logo dargestellt.
  • Der Name des Repositorys hat am Anfang den Zusatz github_.

Repository-Synchronisierung erzwingen

Nachdem Sie die Spiegelung eingerichtet haben, synchronisiert Cloud Source Repositories automatisch Ihr Repository mit dem gespiegelten Repository, sobald ein Nutzer eine Änderung vornimmt. Mit Cloud Source Repositories können Sie sich anzeigen lassen, wann das gespiegelte Repository zuletzt synchronisiert wurde, und gegebenenfalls manuell eine Synchronisierung erzwingen.

  1. Wechseln Sie in der GCP Console zum gespiegelten GitHub-Repository.

  2. Klicken Sie auf Einstellungen .

    Der Synchronisierungsstatus wird angezeigt.

    Synchronisierungsstatus des gespiegelten Repositorys

  3. Klicken Sie auf Von GitHub synchronisieren, um manuell eine Synchronisierung der Repositories zu erzwingen.