Frage

Ich habe einen Mercurial Spiegel einer SVN-Repository erstellt (unter Verwendung dieses Tutorial: http://oreilly.com/opensource/excerpts/opensource-mercurial/migrating-to-mercurial.html ). Die Sync funktioniert gut, außer ich habe bemerkt, dass es nicht ein externes Repository Aufnehmen, die in der Haupt SVN verwiesen wird Repo ...

Ich würde im Idealfall wie in der Lage sein, alles als ein einziges Repo in Mercurial zu ziehen (zusammen mit Change wenn möglich).

Was ich bin mir nicht sicher ist: ist die fehlende äußeree Begrenzung von svnsync, oder eine Beschränkung von hg convert

Gibt es eine Möglichkeit, die externe Kraft kann auch synchronisiert werden, in die gleiche Mercurial Repo?


Ich denke, eine gute Lösung, um den Sync-Prozess würde alle immer wieder einzurichten, für die extern. Erstellen Sie eine Gabel des aktuellen hg Spiegel, und synchronisieren Sie die externe in den hg Spiegel Gabel.

Der Fang mit dem heißt, der Rumpf der externen soll in einen Unterordner des ersten Spiegels gehen, so wie kann ich das Replizieren mit konvertieren? Ich bezweifle, dass ich Konvertit zum Import in einen Unterordner ...

sagen konnte,
War es hilfreich?

Lösung

  

ist die fehlende externe Begrenzung von svnsync oder eine Beschränkung von hg convert?

svnsync wird verwendet, um einen Spiegel einer SVN-Repository zu erstellen. Dazu gehören alle svn:externals Eigenschaften. Daher muss es eine Begrenzung des hg convert sein.

Beachten Sie, dass Sie nicht wirklich benötigen einen Spiegel mit svnsync zu erstellen. Der Artikel empfiehlt das nur, weil eine lokale Kopie, die möglicherweise den Umwandlungsprozess beschleunigen.

  

Gibt es eine Möglichkeit, die externe Kraft kann auch synchronisiert werden, in die gleiche Mercurial Repo?

Es ist üblich, ein SVN-Repository mehr losen Projekte zu enthalten, die jeweils mit ihren eigenen Zweigen und Tags. Aber Mercurial funktioniert nicht auf diese Art und Weise: Wenn Sie Zweig verzweigen Sie alles, was im Repository ist. Sie sollten eine separate Mercurial-Repository für jedes Projekt in SVN erstellen, die ihren eigenen trunk / branches / tags hat. Dieser unterschiedliche Ansatz ist sehr wahrscheinlich, warum hg convert Äußerlichkeiten ignoriert, auch wenn sie in dem gleichen SVN-Repository ist.

Es ist ein Äquivalent svn:externals in Mercurial; es ist „subrepositories“ genannt. Anstelle einer oder mehrere svn:externals Eigenschaften, haben Sie eine einzelne .hgsub Datei mit ähnlichem Inhalt in der Wurzel Ihres Projektes. Sie sollten zunächst jedes SVN Projekt zu einer separaten Mercurial-Repository, konvertieren und sie dann mit subrepositories verbinden. Sehen Sie sich die Quecksilber-Wiki-Seite für subrepositories für weitere Details .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top