Branches · oefening
Verplaats de branch met een commit
Je huidige branch is add-opening-hours, maar hij wijst nog naar dezelfde commit als main. Nu maak je één commit en zie je dat alleen de huidige branch opschuift.
Voeg het bestand met openingstijden toe
Open een nieuw bestand met nano:
nano -w hours.txt
nano is de terminaleditor die je in deze hele cursus gebruikt. De optie -w voorkomt dat nano harde regeleinden toevoegt alleen omdat de terminal smal is.
Typ deze ene regel:
Opening hours: 9:00 to 17:00.
Sla op met Ctrl-O, druk op Enter om hours.txt te bevestigen en sluit af met Ctrl-X. Wil je de volledige uitleg van nano nog eens lezen, dan legt de eerste les van hoofdstuk 2, Bewerk een bestand in de terminal, elke toets uit vanaf een leeg scherm.
Commit op de huidige branch
De volgende drie opdrachten volgen hetzelfde pad van bewerken, klaarzetten en committen dat je in hoofdstuk 2 leerde. Met git status bekijk je het untracked bestand. git add hours.txt zet de huidige inhoud in de staging area en git commit -m legt de klaargezette momentopname vast met het bericht tussen aanhalingstekens.
git status
git add hours.txt
git commit -m "Add opening hours"
Git maakt de nieuwe commit na Clarify the guide title. Omdat HEAD add-opening-hours volgt, schuift die branchwijzer door naar de nieuwe commit. main en clearer-title bewegen niet.
Add opening hours <- add-opening-hours (HEAD)
|
Clarify the guide title <- main, clearer-title
|
Start the neighborhood guide
Lees het resultaat
Voer de twee eenvoudigste leesopdrachten uit:
git log
git branch
git log leest terug vanaf de huidige branch. Add opening hours is dus de nieuwste commit, gevolgd door de twee voorbereide commits. git branch zonder opties markeert add-opening-hours nog steeds met *.
git log zonder opties toont de andere branchnamen niet naast afzonderlijke commits. Deze les voegt geen compacte weergaveoptie toe om ze zichtbaar te maken. Het belangrijkste model is al genoeg: een commit schuift de branch door die HEAD volgt, terwijl de andere branchwijzers op hun plek blijven.
Waar wijst main naar nadat je op add-opening-hours hebt gecommit?
Dit is de regel die branches nuttig maakt: een commit verplaatst de branch waarop je staat en laat elke andere branch precies op zijn plek. Je werk aan de openingstijden bestaat en main weet er nog niets van.
Dat roept een terechte vraag op. Als main geen hours.txt heeft, wat gebeurt er dan met het bestand op schijf als je teruggaat naar main?