2010-06-02 6 views
7

Wenn ich ein ziemlich großes Mercurial-Projekt lokal habe und experimentieren möchte, kann ich dann sicher eine lokale Kopie von allem machen und dort arbeiten?Ist es sicher, einen lokalen Mercurial-Repository-Klon zu "verzweigen", indem Sie einfach das gesamte Verzeichnis kopieren?

Zum Beispiel lassen Sie uns sagen, dass ich dies tun:

  1. Clone das Repository von einem zentralen Server in einem lokalen Verzeichnis
  2. einige Änderungen vornehmen, begehen sie lokal, nicht schieben
  3. Kopie erstellen lokal
  4. einige Änderungen in beiden Kopien des Verzeichnisses Stellen lokal, verpflichten, nicht schieben
  5. Push-Originalkopie
  6. drücken zweite Kopie

Wird dies sicher sein? Oder werden beim Klonen einige eindeutige IDs generiert?

Ein Projekt ist ziemlich groß, und der Server hat eine ziemlich langsame Verbindung, oder so scheint es, also dauert es ewig, einen vollständigen Klon vom zentralen Server zu machen.

Antwort

6

Yup, das ist vollkommen sicher.

Die einzigen Unterschiede, die ich vor Ort ein Repository zwischen Klonen denken kann, hg clone a/ b/, und das Kopieren des Repository, cp -r a/ b/ sind:

  • Cloning harte Links verwenden, wenn möglich, so dass weniger Speicherplatz verwendet werden
  • Repository spezifische Konfiguration (zB a/.hg/hgrc) nicht von hg clone
  • coppied wird Wenn Sie den Standard Push klonen/Pull-Pfad von b/ wird a/
  • eingestellt wird 0

Also, ja - kein Problem mit dem Kopieren des Repos.

+0

Danke, ich hatte gehofft es war aber nicht ganz sicher. –

+0

Das "harte Verbindungen" -Element kann eine große Sache sein, Raum-weise. Wenn Sie die zugrunde liegenden .hg-Dateien klonen, handelt es sich um Hardlinks, sodass sie bis zu Änderungen keinen zusätzlichen Speicherplatz belegen. Gegenüber einem 'Klon -U', der keine Arbeitskopie erstellt, wird kein neuer Speicherplatz belegt (Geben oder Nehmen). Sie sollten also einen Klon -U erstellen und dann das geänderte und nicht erzwungene Arbeitsverzeichnis kopieren. Dann erhalten Sie Ihren Workflow und die Platzersparnis. –

+0

Dies ist auf Windows, so bezweifle ich, dass harte Links ein Problem für mich sein werden :) Tut mir leid, dass ich das in meiner Frage nicht erwähnt habe. –