Merge ohne gemeinsame commits in den master-branch?

Habe ich ein Git-repo, eine Menge von commits und eigenen code, sagen

/Proj1

Ich auch ein anderes Git-repo, dass 1 Begehen, die nicht zu einer gemeinsamen Begehung,

/Proj2

Wie kann ich die Zusammenführung der beiden repos und haben eine Geschichte, die zeigen, bis das richtig mit Eltern-commits? Im Grunde gibt es keine gemeinsame begeht zwischen den beiden repos, aber ich möchte ein repo, das beide Sätze von code. Ich würde gerne für Sie Aussehen:

proj2 commit
proj2 commit
proj1 commit (root)

Ich weiß, dass rebase ist eine option, aber nicht sicher, ob mit --onto ersetzt die root-commit (denen scheint es zu tun, wenn ich einen Abruf aus dem remote-repo-und rebase --onto --root master).

Habe ich versucht, mit Hilfe von git Teilbäume, die zunächst schauen, wie Sie arbeiten, aber wenn ich verwende git-tfs-push mein begeht, aber ich erhalte eine Fehlermeldung, die sagt

Achtung: die Eltern ... gehört nicht zu einer TFS-Zweig verfolgt (nicht überprüft TFS) und werden ignoriert

und die commits nicht wirklich push-up (wahrscheinlich auch, weil es einen Teilbaum).

Edit: ich will nur am Ende mit 1 repo (Proj1), haben aber Projekt2 ist verpflichtet nach Proj1 commit auf dem master-branch.

  • Solltest du einen Git-repository pro Projekt. Warum würden Sie wollen, um Sie Zusammenführen?
  • Git + TFS? Du Arme, Arme Seele.
  • Ich habe bearbeitet Sie meine Frage. Es gibt grundsätzlich 2 Gruppen von Codes, die in verschiedenen repos (keine gemeinsame begeht), und ich möchte in der Geschichte der 2. repo-bewegen in der 1. repo.
  • git-tf besser?
  • Es war ein Witz, nichts dagegen haben mich ;)
  • Haha keine Sorge, nur mit git-tfs für ein paar Schritte!
  • Es sind Momente wie dieser waren ich wünschte, high-rep-Benutzer einladen könnten niedrige rep-Nutzern zu chatten. Bitte erklären, was das Verzeichnis/Struktur von Projekt 1 und 2 sind. Sind Sie tatsächlich das gleiche Projekt, nur in zwei getrennten repos? Oder sind das zwei völlig verschiedene Projekte, und Sie sind versucht, mit einem Projekt in das andere (wie das importieren von einer externen Bibliothek, und damit die Teilbäume)? Ich bin mir nicht sicher, ob TFS unterstützt Git Teilbäume, könnte etwas sein, das lohnt sich zu suchen.
  • Wenn die TFS nicht unterstützt Teilbäume, es würde nicht schwer sein, die Stellungswechsel der Geschichte von einem Projekt in der Geschichte eines anderen. Die --root option sollte nicht nötig sein, es sei denn, Sie möchten, Bearbeiten Sie die root-commit...es ist schon eine Weile her, seit ich getan habe, diese Art der Sache, so werde ich brauchen, um doppelt zu überprüfen. Obwohl dies nicht eine schwierige Sache zu tun in Git, aber ich weiß nicht, wie eine solche änderung erhalten werden, die durch TFS.
  • Wenn Sie einen rebase eine Geschichte Baum auf den anderen, den richtigen Befehl zu verwenden wäre git rebase --onto master --root otherMaster. In einem solchen Fall die Wurzel von otherMaster transplantiert, auf die Spitze master, und unter der Annahme, dass es keine Konflikte gibt, deren code-Zustand wird nicht verändert, durch den Stellungswechsel.
  • Vielen Dank für Ihre Anregungen, Cupcake. TFS-nicht wirklich unterstützen Teilbäume Letzte, die ich überprüft. Zwei verschiedene Projekte und versuchen mit einem Projekt in das andere. Ich benutzte git Teilbäume hinzufügen --prefix='{name}", und es sah aus wie nach dass die git-TFS-tool würde nicht akzeptieren, der begeht in der Teilbaum, der die Geschichte (vielleicht ist das ein git-TFS-Problem?).
  • Ah, Sie es fest, @Cupcake! Stellt sich heraus, dass ich die Vermischung der Reihenfolge der rebase-Schalter. 🙂

Schreibe einen Kommentar