Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Ein Repository duplizieren

Um einen Mirror eines Repository zu behalten, ohne es zu forken, kannst du einen speziellen Klonbefehl ausführen und dann einen Spiegel-Push in das neue Repository durchführen.

Bevor du das ursprüngliche Repository an deine neue Kopie oder Spiegelung des Repositorys übertragen kannst, musst du das neue Repository unter your GitHub Enterprise Server instance erstellen. In diesen Beispielen sind exampleuser/new-repository oder exampleuser/mirrored die Spiegel.

Ein Repository spiegeln

  1. Öffne TerminalTerminalGit Bash.
  2. Erstelle einen leeren Klon des Repositorys.
    $ git clone --bare https://HOSTNAME/EXAMPLE-USER/OLD-REPOSITORY.git
  3. Führe den Spiegel-Push in das neue Repository durch.
    $ cd OLD-REPOSITORY.git
    $ git push --mirror https://HOSTNAME/EXAMPLE-USER/NEW-REPOSITORY.git
  4. Entferne das temporäre lokale Repository, das 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. Erstelle 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/EXAMPLE-USER/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/EXAMPLE-USER/NEW-REPOSITORY.git
  6. Übertrage die Git Large File Storage-Objekte des Repositorys zu deinem Spiegel.
    $ git lfs push --all https://github.com/EXAMPLE-USER/NEW-REPOSITORY.git
  7. Entferne das temporäre lokale Repository, das 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/EXAMPLE-USER/REPOSITORY-TO-MIRROR.git
  3. Lege den Push-Ort auf deinen Spiegel fest.

    $ cd REPOSITORY-TO-MIRROR
      $ git remote set-url --push origin https://HOSTNAME/EXAMPLE-USER/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.

  4. Um deinen Spiegel zu aktualisieren, rufe Änderungen ab und übertrage sie per Push.

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