Frage

Ich bin die Verabreichung eine SVN-Repo für ein Projekt, bei dem die Quelle nicht mit einem einzigen Top-Level-Verzeichnis importiert wurde. Als Ergebnis gibt es etwa 15 verschiedene ‚Projekte‘ statt einem. Wie kann ich diese in einem Ordner zusammenführen, während die Änderungshistorie beibehalten?

* Hinweis:. Svn bewegen sich in diesem Fall nicht funktioniert

[Bearbeiten] hoppla, Betrogene von Kombinieren mehrere SVN-Repositories in eine

War es hilfreich?

Lösung

Wenn Sie nicht über die Beibehaltung all die Geschichte eines des Repositories kümmern, können Sie einfach ein neues Verzeichnis des Repositorys unter einem Projekt erstellen, dann die andere importieren.

Wenn Sie über die Beibehaltung der Geschichte beider kümmern, dann können Sie ‚svnadmin dump‘ verwenden ein Repository-Dump, und ‚svnadmin load‘ es in den anderen Repository zu laden. Die Revisionsnummern werden ab, aber Sie werden immer noch die Geschichte haben.

von hier kopiert: http://subversion.tigris.org/faq.html # Multi-Merge

Andere Tipps

Vielleicht zu viel Ich habe mit der Versionskontrolle verteilt Hammer und alles, was ich an dieser Stelle zu sehen sind verteilt Nägel. Aber ich muss noch einmal sagen, dass dies wahrscheinlich ein Job für DVCSs.

Ich würde versuchen, um mit git-svn oder so etwas durcheinander. Importieren Sie jedes „Projekt“ in seine eigene Git Repository und sie git pull voneinander. Lösen Sie alle Konflikte und, nach allem, was geschehen ist, importieren Sie die Geschichte wieder in Subversion.

Aber Ihr Team kann besser dran, nur die verteilte Kontrolle, nachdem Sie alle beenden sowieso die repos Verschmelzung ...

Sie könnten ein neues Top-Level-Projekt erstellen, das SVN verwendet: externals zu allen anderen Projekten zu zeigen und legt sie in der entsprechenden Unterverzeichnissen.

  • Devs müssen nur Ihre neue Top-Level-Projekt überprüfen (SVN automatisch die SVN folgen: externals und in den anderen ziehen)
  • die Vollversion der Geschichte wird beibehalten und neue Änderungen werden automatisch an die jeweilige Teilprojekt verpflichtet werden
  • es wird Sie ca. 5 Minuten dauern zu implementieren (das neue Top-Level-Projekt erstellen und ausführen svn propedit svn:externals top_dir).
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top