Wir veröffentlichen regelmäßig Aktualisierungen unserer Dokumentation, und die Übersetzung dieser Seite kann noch im Gange sein. Die neuesten Informationen findest Du in der englischsprachigen Dokumentation. Informieren Sie uns bitte, falls auf dieser Seite ein Problem mit den Übersetzungen vorliegt.

Diese Version von GitHub Enterprise wurde eingestellt am 2020-11-12. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Ein Repository duplizieren

Um ein Repository zu duplizieren, ohne es zu forken, kannst Du einen speziellen Klon-Befehl ausführen und dann einen Spiegel-Push in das neue Repository durchführen.

Inhalt dieses Artikels

Bevor Du ein Repository duplizierst und zu Deiner neuen Kopie (dem Spiegel) des Repositorys übertragen kannst, musst Du auf your GitHub Enterprise Server instance das neue Repository erstellen. In diesen Beispielen sind exampleuser/new-repository oder exampleuser/mirrored die Spiegel.

Ein Repository spiegeln

  1. Öffne TerminalTerminalGit Bash.
  2. Erstellen Sie einen leeren Klon des Repositorys.
    $ git clone --bare https://hostname/exampleuser/old-repository.git
  3. Führe den Spiegel-Push in das neue Repository durch.
    $ cd old-repository.git
    $ git push --mirror https://hostname/exampleuser/new-repository.git
  4. Entferne das temporäre lokale Repository, dass Du früher erstellt hast.
    $ cd ..
    $ rm -rf old-repository.git

Ein Repository spiegeln, das Git Large File Storage-Objekte enthält

  1. Öffne TerminalTerminalGit Bash.
  2. Erstellen Sie einen leeren Klon des Repositorys. Ersetze den Beispiel-Benutzernamen durch den Namen der Person oder Organisation, der das Repository gehört, und ersetze den Beispiel-Repository-Namen durch den Namen des Repositorys, das Du duplizieren möchtest.
    $ git clone --bare https://hostname/exampleuser/old-repository.git
  3. Navigiere zu dem Repository, das Du gerade geklont hast.
    $ cd old-repository.git
  4. Rufe die Git Large File Storage-Objekte des Repositorys ab.
    $ git lfs fetch --all
  5. Führe den Spiegel-Push in das neue Repository durch.
    $ git push --mirror https://hostname/exampleuser/new-repository.git
  6. Übertrage die Git Large File Storage-Objekte des Repositorys zu Deinem Spiegel.
    $ git lfs push --all https://github.com/exampleuser/new-repository.git
  7. Entferne das temporäre lokale Repository, dass Du früher erstellt hast.
    $ cd ..
    $ rm -rf old-repository.git

Ein Repository an einem anderen Ort spiegeln

Wenn Du ein Repository an einem anderen Ort spiegeln und Aktualisierungen vom Original-Repository abrufen möchtest, kannst Du einen Spiegel klonen und die Änderungen regelmäßig per Push übertragen.

  1. Öffne TerminalTerminalGit Bash.
  2. Erstelle einen leeren gespiegelten Klon des Repositorys.
    $ git clone --mirror https://hostname/exampleuser/repository-to-mirror.git
  3. Lege den Push-Ort auf Deinen Spiegel fest.
    $ cd repository-to-mirror.git
    $ git remote set-url --push origin https://hostname/exampleuser/mirrored

Wie ein leerer Klon enthält ein gespiegelter Klon alle Remote-Branches und Tags. Alle lokalen Verweise werden jedoch bei jedem Abrufen überschrieben, sodass er immer mit dem Original-Repository übereinstimmt. Das Festlegen einer Push-URL vereinfacht Pushes zu Deinem Spiegel. Um Deinen Spiegel zu aktualisieren, rufe Änderungen ab und übertrage sie per Push.

$ git fetch -p origin
$ git push --mirror