Wat is Git?
Git is een programma dat alle versies van je code bewaart. Elke keer als je iets af hebt, sla je een versie op. Gaat er later iets mis? Dan ga je gewoon terug naar een eerdere versie.
Denk aan een game:
Een commit in Git is net als een savepoint in een game. Ga je dood (code kapot)? Dan begin je weer bij je laatste savepoint, in plaats van helemaal opnieuw.
Zonder Git krijg je dit:
website.zip
website-nieuw.zip
website-nieuw-FINAL.zip
website-nieuw-FINAL-echt.zip
Met Git heb je gewoon één map, en Git onthoudt alle versies voor je.
Git, GitHub en GitHub Desktop
- Git — het programma op je laptop dat de versies bewaart
- GitHub — de website waar je je code online zet, zodat je team erbij kan
- GitHub Desktop — een app met knoppen, zodat je geen commando's hoeft te typen
Desktop of terminal?
Als je in GitHub Desktop op een knop klikt, voert Desktop eigenlijk een Git-commando uit. Op deze cheat sheet zie je steeds allebei: eerst hoe het in Desktop gaat, daarna hoe je het in de terminal typt.
De 4 stappen
Dit zijn de vier dingen die je het vaakst doet:
| Stap | Wat doet het? | In GitHub Desktop |
|---|---|---|
git add | Kies welke bestanden je wilt opslaan | Vinkje voor het bestand |
git commit | Sla een versie op (op je laptop) | Knop Commit to … |
git push | Stuur je versies naar GitHub | Knop Push origin |
git pull | Haal het werk van je team binnen | Knop Pull origin |
Let op: een commit staat alleen op jouw laptop. Je team ziet het pas na git push!
Zie het in actie
Klik de knoppen van links naar rechts en kijk waar je bestand naartoe gaat. Probeer daarna ook eens: eerst Sam pusht iets, en dan zelf git push. Wat gebeurt er?
Wat gebeurt er?
- Je past een bestand aan
git add→ je legt het klaargit commit→ je slaat een versie op, op je laptopgit push→ je zet het op GitHub voor je team
Begrippen
- Repository (repo) — je projectmap, maar dan bijgehouden door Git
- Commit — een opgeslagen versie van je code (een savepoint)
- Push — je commits naar GitHub sturen
- Pull — het werk van anderen van GitHub binnenhalen
- Clone — een repo van GitHub naar je laptop downloaden
- Branch — een aparte kopie om aan iets nieuws te werken
- main — de hoofdversie van je project
- Pull request — een verzoek: "mag mijn werk in main?"
Nog niet alles duidelijk? Geen probleem. Branches en pull requests leer je op de volgende pagina's.