Hoofdstuk 1
Waar versiebeheer voor dient
Welkom bij de cursus
Hoi, ik ben Erik. Ik schrijf en onderhoud deze cursus, samen met de rest van Python Land. Ik heb hem gemaakt voor iedereen bij wie de projectmap ongemerkt is volgelopen met report-final.txt, report-final-v2.txt en report-final-actually.txt, en die vermoedt dat het beter kan.
Dat kan. Git is het hulpmiddel dat het grootste deel van de softwarewereld gebruikt om bij te houden hoe een project veranderde, waarom het veranderde en hoe je een eerdere versie terughaalt. Het heeft de reputatie lastig te zijn, en die is deels terecht. Maar die reputatie komt vooral doordat Git vaak wordt uitgelegd als een lijst opdrachten, in plaats van als een idee waar opdrachten bij horen.
Misschien kom je hier vanuit een andere cursus
Andere Python Land-cursussen linken rechtstreeks naar een les midden in deze cursus die uitlegt wat ze daar nodig hebben. Daarom zijn de lessen hier niet vergrendeld. Die gelinkte lessen leggen hun beginsituatie uit en bieden waar nodig een voorbereid project. Andere oefenlessen bouwen voort op eerder werk in hun hoofdstuk. Volg dus de hoofdstukvolgorde als je een onderwerp vanaf het begin leert.
Begin je vooraan, dan heeft de volgorde een reden. Het eerste hoofdstuk gaat over waar versiebeheer eigenlijk voor dient, voordat er ook maar een opdracht verschijnt.
Zo ga je oefenen
Bij de meeste lessen staat een terminal op de pagina. Dat is geen simulatie. Er draait echte Git op een echte computer, en fouten die je daar maakt zijn echte fouten die je ook echt leert herstellen. Daar gaat het om. Een les verderop in dit hoofdstuk legt die omgeving goed uit, inclusief hoe je overstapt naar je eigen computer.
Je hoeft je niet te haasten. Dat iets de eerste keer niet duidelijk is, is normaal. Vooral bij Git valt het kwartje vaak pas bij de tweede of derde kennismaking.
Deze site zou redelijk goed moeten werken op een klein scherm, zoals je mobiele telefoon. Probeer het eens; je kunt een les of twee lezen terwijl je op iets of iemand wacht. Leren vraagt veel herhaling, dus een eerdere les nog eens kort doorlezen is goed bestede tijd. Typen in een terminal gaat beter met een echt toetsenbord. Bewaar de praktijklessen daarom voor wanneer je achter je computer zit.
Maak kennis met Monty
Monty is de leerhulp van Python Land. Je vindt hem naast elke les. Je kunt om een andere uitleg vragen, vragen wat een melding van Git eigenlijk betekent, of om een hint vragen die je weer op weg helpt zonder het antwoord weg te geven.
In dit hele eerste hoofdstuk is Monty gratis beschikbaar. Open Monty nu en vraag:
Waarom hebben programmeurs versiebeheer nodig als ze al back-ups hebben?
Stel een vervolgvraag als een deel van het antwoord onduidelijk is. Monty weet welke les je leest, dus je hoeft de situatie niet vanaf het begin uit te leggen.
Na hoofdstuk 1 hoort volledige ondersteuning van Monty bij het Guided-abonnement. De cursus is zo geschreven dat je hem ook zonder Monty kunt volgen. Guided is er voor momenten waarop een tweede uitleg je een uur giswerk bespaart.
Oefen met projecten die weg mogen
Git helpt je versies terug te halen die je hebt vastgelegd, maar kan niet elke bewerking herstellen die je nooit in Git hebt opgeslagen. Daar gaat een heel hoofdstuk over: je leert wat elke herstelopdracht bewaart, wat ze weggooit en hoe je een ontbrekende commit zoekt.
De oefenprojecten op deze pagina mogen weg. Maak ze gerust expres stuk. Vaak begrijp je zo het snelst wat een opdracht echt heeft gedaan.
Druk op Mark complete als je klaar bent. Dan beginnen we met de map vol kopieën.