Version Control¶
Wat is versiebeheer, en wat heeft dat met jou te maken? Versiebeheer is het systeem waarbij veranderingen in een bestand of groep van bestanden over de tijd wordt bijgehouden, zodat je later specifieke versies kan opvragen. Het doel van versiebeheer is om als groep met de laatste versie op je harde schijf te werken en niet op de browser te werken. Dit doen we door Bitbucket en Mercurial te gebruiken. Sphinx is een tool om documenten van reStructeredText files(.rst) om te zetten naar bijvoorbeeld een HTML website.
Bitbucket¶
Maak een account op Bitbucket.org om de codes met elkaar te kunnen delen. Als je een account hebt gemaakt, zoek naar Pathways-Extension (Training) van Albert Mietus. Op de hoofdpagina van Pathways-Extension (Training) staat de algemene informatie over dit project.
Fork
Iedereen die aan het project werkt maakt zijn eigen Fork op Bitbucket: Fork > De standaard instellingen staan goed en maak je Fork repository. Jou FORK staat nu ook op de hoofdpagina en op je eigen frontpag. Wanneer je al een Fork gemaakt hebt en je wilt de naam veranderen: Ga naar je eigen Fork pagina, Settings (linksbeneden).
Clone Als je clonet zet je een kopie van wat er op de online repository staat op je eigen PC. Op deze kopie kan je vervolgens wijzigingen aanbrengen en pushen naar je online repository. Zorg ervoor dat je je eigen repository cloned, want dat is de enige repository waar je schrijfrechten op hebt.
Clonen doe je door op je eigen pagina op ‘clone’ (linkerkant) te drukken. Kopieer de link en open de command prompt. Indien de knop ‘clone’ niet aanwezig is, kan je ook je URL nemen. Verander de locatie in je command prompt als je dat wilt en tik “hg clone” in en plak erachter de link:
hg clone [link]
Om dit commando te gebruiken moet eerst Mercurial zijn geïnstalleerd, zie de link bij Mercurial hieronder.
Master
De master van dit project is Albert Mietus en zorgt dat alles dat erop komt, goed staat. De Master accepteert alle wijzigingen die door de anderen zijn gedaan.
Mercurial¶
Mercurial is te downloaden op https://www.mercurial-scm.org/. Als je iets wilt aanpassen, pull dan de laatste versie en merge het met die van jou. Zorg wel ervoor dat jouw status gecommit is en dat je de laatste versie hebt om die met een ander te mergen. Door dit te doen is jouw Local up to date. Hierna kan je de aanpassingen toevoegen en committen. Uiteindelijk heb jij de laatste versie met de aanpassingen en kan je het naar de anderen pushen. Door te pushen kunnen andere teamleden de laatste versie van jou pullen en ermee verder werken.
Hieronder staan kort de basis commandos van Mercurial beschreven. Voor meer informatie zie: https://www.mercurial-scm.org/wiki/Tutorial
Pull and Push
Bij een pull zet je de wijzigingen van een andere online repository in jouw eigen locale repository. Dit doe je in de command line met:
hg pull [link]
waarbij [link] de URL is van een andere repository. Deze kun je vinden op bitbucket.
Bij een push zet je jouw gecommitte wijzigingen op je eigen online repository. Dit doe je door middel van:
hg push
Merge, Commit and Add
Bij een commit zet je je eigen wijzigingen klaar om gepusht te worden naar jou repository. Het is belangrijk dat je dit doet voordat je pullt en pusht. Committen doe je met:
hg commit
Hierbij opent er een txt bestand waarin gewijzigde documenten zichtbaar zijn. Type bovenaan een bericht en sluit het document. Hierna zullen je wijzigingen gecommit zijn.
Als je add worden nieuwe of verwijderde bestanden klaargezet voor je commit. Als je dit niet doet, worden ze niet meegecommit. Gebruik hiervoor:
hg add
Met een merge voeg je gepullde wijzigingen van een andere repository samen met je eigen wijzigingen. Dit doe je met
hg merge
Status
De status geeft weer of er gewijzigde bestanden zijn die nog gecommit moeten worden. De status wordt weergegeven met:
hg status
Hierbij zie je bestanden samen met de status hiervan. De betekenis van alle statussen staat hieronder. Zorg ervoor dat als er bestanden zijn die niet Modified zijn dat je hg add gebruikt.
Symbol | Description |
---|---|
M | Modified |
A | Added |
? | Unknown |
! | Missing |
I | Ignore |
R | Removed |
Grafisch interface
Als iets niet lukt bij in command prompt, kun je ook het grafische interface van TortoiseHg gebruiken. Dit kun je gebruiken door op je computer naar de directory te gaan waar de rekenrobot repository staat. Vervolgens kan je rechtsklikken en commando’s van Hg gebruiken, zoals hg commit of hg status.