Lokale Mercurial repository naar centrale repository

Vaak wanneer ik aan het ontwikkelen ben begin ik eerst lokaal met een klein project. Deze groeit uiteindelijk uit in een iets groter project waar nog wat wijzigingen in plaatsvinden en uiteindelijk wordt het dan het product wat je voor ogen had. Tijdens deze ontwikkeling wil ik dan wel altijd versiebeheer hebben, zodat alles geborgd is.

Voor m’n prive projecten gebruik ik inmiddels al een tijdje Mercurial en ben daar ook enorm tevreden over. Zeker met de plug-ins welke voor Visual Studio worden aangeboden is het goed werken en heb je de hele commandline bijna niet meer nodig.

Wat ik wel vervelend vond is dat het me nog niet was gelukt om een lokale repository te verplaatsen naar een centrale repository en die dan leading maken.

Met het commando hg clone of hg push kon ik het m’n centrale server krijgen, maar dan bleef m’n lokale repository leading en dat moet natuurlijk andersom. Na een kleine speurtocht ben ik er achter gekomen dat de leading repository wordt bijgehouden in het bestand hgrc (pad is .hg/hgrc). Hier staat een entry in met het pad naar de centrale repository. Door deze aan te passen kun je dus de lokale waarde wijzigen in de centrale.

Hieronder de benodigde stappen.

  • Maak een nieuwe repository op de centrale server
  • Navigeer naar de lokale repository, bijvoorbeeld C:\Projects\Project1
  • Push de lokale repository naar de centrale, bijvoorbeeld: hg push https://repositoryserver/hg/Project1
  • Open nu het bestand .hg/hgrc met Notepad
  • Wijzig nu het pad naar het pad van de centrale repository, bijvoorbeeld:
[paths]
default = https://repositoryserver/hg/Project1/

Wanneer de laatste stap is voltooid zal de centrale repository worden gebruikt voor pushes en pulls, zonder dat dit nog gedefinieerd hoeft te worden.


Share