Labo 2 — Samenwerken via GitHub
In dit labo verbind je je lokale repository met GitHub. Je oefent het pushen en pullen van wijzigingen en de pull request workflow.
Je hebt een GitHub-account nodig. Maak er één aan op github.com als je dat nog niet gedaan hebt.
Raadpleeg deze sectie als je iets wil nalezen:
Oefening 1 — Je portfolio naar GitHub pushen
Gebruik de portfolio-repository uit Labo 1.
- Maak een nieuwe lege repository aan op GitHub met de naam
portfolio. Voeg geen README, .gitignore of licentie toe — die heb je lokaal al. - Koppel je lokale repository aan de GitHub-repository via
git remote add. - Controleer met
git remote -vof de koppeling correct is. - Push je lokale commits naar GitHub.
- Ga naar github.com en open je repository. Zie je alle bestanden en commits?
- Pas de
<h1>inindex.htmlaan, commit en push. Verifieer de wijziging op GitHub.
Oefening 2 — Clonen en aanpassen
- Kloon je eigen
portfolio-repository naar een nieuwe map op je computer met een andere naam, bijvoorbeeldportfolio-clone. - Open het gekloonde project in VS Code.
- Maak een nieuw bestand
README.mdaan met een korte beschrijving van het project. - Commit het bestand met een duidelijk bericht.
- Push naar GitHub.
- Controleer op GitHub of het bestand verschijnt.
- Ga terug naar je originele
portfolio-map en haal de laatste wijzigingen op metgit pull. IsREADME.mdnu ook daar aanwezig?
Oefening 3 — Feature branch en pull request
Werk vanuit de originele portfolio-map.
- Haal eerst de laatste versie van
mainop. - Maak een nieuwe branch
feature/skillsaan en schakel ernaar. - Maak een bestand
skills.htmlaan met een lijst van technologieën die je aan het leren bent:<!DOCTYPE html><html><head><title>My Skills</title></head><body><h1>Skills</h1><ul><li>HTML & CSS</li><li>Git</li><li>JavaScript</li></ul></body></html> - Commit de wijziging op de branch.
- Push de branch naar GitHub.
- Ga naar GitHub — je ziet een melding over de nieuwe branch. Maak een Pull Request aan van
feature/skillsnaarmain. Schrijf een korte beschrijving. - Merge de Pull Request op GitHub.
- Haal lokaal de laatste versie op met
git pullen controleer datskills.htmlnu inmainzit. - Verwijder de branch lokaal.
Oefening 4 — Samenwerking (duo)
Deze oefening doe je samen met een medestudent. Je simuleert een echte samenwerking waarbij jullie allebei bijdragen aan hetzelfde project.
Persoon A — repository opzetten:
- Maak een nieuwe GitHub-repository
samenwerkingaan. - Maak lokaal een
index.htmlmet een welkomstbericht, commit en push. - Voeg persoon B toe als collaborator: Settings → Collaborators → Add people.
Persoon B — bijdragen via een branch:
- Kloon de repository van persoon A.
- Maak een branch
feature/introaan. - Voeg een bestand
intro.htmltoe met een korte introductietekst. - Commit en push de branch.
- Open een Pull Request op GitHub.
Persoon A — review en merge: 6. Bekijk de Pull Request van persoon B. Voeg een opmerking toe. 7. Merge de Pull Request.
Beiden:
8. Voer git pull uit en bekijk samen de commit-geschiedenis. Wiens commits zie je?
Uitdaging — Volledige GitHub workflow
Geen instructies meer. Pas alles toe wat je geleerd hebt.
Doel: publiceer de webshop uit Labo 1 op GitHub en werk samen aan een nieuwe feature.
- Push de
webshop-repository naar GitHub - Voeg een medestudent toe als collaborator
- Werk elk aan een andere feature op een aparte branch (
feature/checkout,feature/search, ...) - Open allebei een Pull Request
- Review elkaars PR en merge beide
- Zorg dat beiden na afloop de meest recente versie hebben
Reflecteer achteraf:
- Wat is het verschil tussen
git cloneengit pull? - Wanneer gebruik je een Pull Request in plaats van direct te mergen?
- Wat gebeurt er als je pusht terwijl een teamlid intussen ook gepusht heeft?