it-swarm.com.de

Wie dupliziere ich ein Git Repository? (ohne Gabelung)

Ich habe zwei Repositorys, und ich muss das Ganze auf das andere leere kopieren, das andere Zugriffsebenen als das erste hat. Die Kopie und das Mutter-Repository sollten nicht miteinander verknüpft werden.

Ich bin neu bei git und es wäre toll, wenn mir jemand dabei helfen könnte.

81
cowboybebop

Siehe https://help.github.com/articles/duplicating-a-repository

Kurze Version:

Um ein genaues Duplikat zu erstellen, müssen Sie sowohl einen Bare-Clone als auch einen Mirror-Push ausführen:

mkdir foo; cd foo 
# move to a scratch dir

git clone --bare https://github.com/exampleuser/old-repository.git
# Make a bare clone of the repository

cd old-repository.git
git Push --mirror https://github.com/exampleuser/new-repository.git
# Mirror-Push to the new repository

cd ..
rm -rf old-repository.git  
# Remove our temporary local repository

ANMERKUNG: Das oben genannte funktioniert gut mit jedem Remote-Git-Repo. Die Anweisungen gelten nicht speziell für Github

Das Obige erstellt eine neue Remote-Kopie des Repos. Dann klonen Sie es auf Ihre Arbeitsmaschine.

149
Larry K

Sie können auch git-copy verwenden.

Installiere es mit Gem,

gem install git-copy

Dann

git copy https://github.com/exampleuser/old-repository.git \
    https://github.com/exampleuser/new-repository.git
18
Quanlong

Wenn Sie nach GitHub kopieren, können Sie den GitHub Importer verwenden, um dies für Sie zu tun. Das Original-Repo kann sogar von anderen Versionskontrollsystemen stammen.

4
Mateus Gondim

Wenn Sie einfach ein neues Repository erstellen möchten, das alle oder die meisten Dateien aus einer vorhandenen (dh als eine Art Vorlage) verwendet, ist der einfachste Ansatz die Erstellung eines neuen Repos mit dem gewünschten Namen usw., klonen Sie es an Dann fügen Sie einfach die gewünschten Dateien und Ordner hinzu.

Sie erhalten nicht die gesamte Geschichte usw., aber Sie möchten dies in diesem Fall wahrscheinlich nicht.

3
tim

Terminal öffnen.

Erstellen Sie einen bloßen Klon des Repositorys.

git clone --bare https://github.com/exampleuser/old-repository.git

Mirror-Push to the new repository.

cd old-repository.git

git Push --mirror https://github.com/exampleuser/new-repository.git

0
Kundan roy