Wie kombiniere ich zwei Projekte in Mercurial?
-
08-06-2019 - |
Frage
Ich habe zwei separate Quecksilber-Repositories.An diesem Punkt macht es Sinn, dass sie „eins werden“, weil ich an beiden Projekten gleichzeitig arbeiten möchte.
Ich möchte wirklich, dass die beiden Projekte jeweils ein Unterverzeichnis im neuen Repository sind.
- Wie füge ich die beiden Projekte zusammen?
- Ist das eine gute Idee oder sollte ich sie getrennt halten?
Es scheint, dass ich in der Lage sein sollte, von einem Repository zum anderen zu pushen ...Vielleicht ist das wirklich einfach?
Lösung
Ich konnte meine beiden Repositories folgendermaßen kombinieren:
- Verwenden
hg clone first_repository
um eines der Repositorys zu klonen. - Verwenden
hg pull -f other_repository
um den Code aus dem anderen Repository abzurufen.
Der -f
(force) Flag beim Pull ist der Schlüssel – es besagt, dass die Tatsache ignoriert werden soll, dass die beiden Repositorys nicht aus derselben Quelle stammen.
Hier sind die Dokumente für diese Funktion.
Andere Tipps
hg begann zu haben Subrepo seit 1.3 (01.07.2009).Die frühen Versionen waren unvollständig und wackelig, aber jetzt ist es ziemlich brauchbar.
Wenn Sie in den Projekten nicht denselben Code verwenden, halten Sie sie getrennt.Sie können einstellen dein Das persönliche Repository jedes dieser Projekte sollte nur ein Verzeichnis voneinander entfernt sein.Warum alle Zweige mischen, zusammenführen und Kommentare festschreiben, wenn es nicht nötig ist?
Zu Ihrer Bearbeitung: Von einem Repository in ein anderes verschieben.Sie können jederzeit die verwenden transplant
Befehl.Allerdings ist das alles wirklich ein Seitenhieb auf Sie Wunsch Ich möchte beides kombinieren, sodass Sie sich bei der Verwendung meiner Vorschläge möglicherweise unwohl fühlen.Dann können Sie die Walderweiterung oder ähnliches verwenden.
hg transplant -s REPOSITORY lower_rev:high_rev