Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.155 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Hilfe für Repo-Struktur benötigt (HG)

  Alt 7. Okt 2014, 13:23
Ich gehe mit den "Liebes Tagebuch, meine ersten Schritte in Mercurial" wahrscheinlich allen auf den Geist, bislang hat mich aber noch niemand hart genug beschimpft.

Wir wollen ein Subversion-Repo komplett von Subversion auf Mercurial bringen. Aus Delphi/C++-Builder-Sicht enthält es mehrere Projekte, die gehören aber alle zusammen. Jedes dieser Projekte benutzt externe Libraries aus anderen SVN-Repos.

Es sieht so aus:
Code:
[Main]
   doc
   Core
      src
      (Lib1)
      (Lib2)
   Proj2
      src
      (Lib2)
   Proj3
      src
      (Lib1)
      (Lib3)
Wobei gilt: [Repo] und (über svn:externals eingebundenes Repo).
In Subversion war das bislang eigentlich komfortabelst zu handhaben.


Ich bin ratlos, wie man das in HG umsetzen sollte:
  • 1:1-Umsetzung: Dann hätte ich einen Haufen direkter Subrepos wie "Lib1_für_Proj3", "Lib1_für_Core"
  • Die Projekte auch zu einzelnen Repos machen
  • Die Projekte zu einzelnen Repos machen, und diese wieder in einem "Master-Repo" verpacken

Letzteres sähe dann so aus:
Code:
[Main]
   doc
   [Core]      
      src
      [Lib1]
      [Lib2]
   [Proj2]
      src
      [Lib2]
   [Proj3]
      src
      [Lib1]
      [Lib3]
Das funktioniert erwartungsgemäß, mich stören hier allerdings zwei Dinge:
  1. Aus unerfindlichen Gründen dauert das Klonen von "Main" über Gigabit-Netzwerk mehrere Minuten. Auf der Platte landen dabei 40MB. Über Subversion war das eine Angelegenheit von fünf Sekunden.
  2. Wenn ich an "Core" etwas ändere muss ich jedes mal auch auf "Main" die Änderungen durchschleifen, also auf eine neuere Revision des "Core"-Subrepos upgraden. Beim pushen muss ich jedes mal "Main" und "Core" an den Server pushen.

Daher zwei Fragen:
  1. Was wäre eurer Meinung nach die beste Aufteilung? Technisch gesehen sind die einzelnen Projekte alleine lauffähig, machen inhaltlich allein aber kaum Sinn.
  2. Kann man in TortoiseHG das "Über-Repo" automatisch aktualisieren lassen wenn man im Subrepo comittet?
  Mit Zitat antworten Zitat