Les 2 - Recap DevOps en 'getting git'

XKCD git

Bron: https://xkcd.com/1597/

Voorbereiding

Reminder: De voorbereiding is niet optioneel. Zonder voorbereiding wordt het lastig om mee te doen met de les en dat is een verspilling van zowel je eigen tijd, tijd van je mede studenten en tijd van de docent. Niet aardig.

  1. Lees de opdrachtbeschrijving van deze week.
  2. Accepteer 1e weekopdracht via de GitHub Classroom link die docent je geeft.
  3. Zorg dat je de laatste (LTS) versie van Git lokaal geinstalleerd hebt.
  4. Review Git
    1. Uitgangspunt is al enige ervaring met Git uit eerdere projecten, zowel theorie als prakijk. Als Git nieuw is, of heel lang geleden kun je deze korte 15 minuten git intro op YouTube van een zekere Colt Steele kijken.
    2. Maak de online oefeningen van module 1 (introduction sequence) van Learn git branching
  5. Lees [dit artikel van Priyam Singh (2020) over de 'four area's' Git's four area's
  6. Haal uit de officiele 'git reset' documentatie het verschil tussen hard, soft en mixed git reset.
  7. Beantwoord de volgende vragen (hier komen wij in de les op terug)
    • Schrijf uit je hoofd op wat de 'four area's' van Git zijn.
    • Hoe past de remote repository bij deze four area's?
    • Hoe commit je het verwijderen van een file?
    • Hoe commit je het veranderen van een bestandsnaam?
    • Kun je een Git commit message later nog aanpassen via de command line? (Zo ja, hoe? Als niet, waarom niet?)
    • Wanneer heb je langere 'commit trail'? Bij gebruik van merge of van rebase?
    • Wat is de standaard 'mode' van git reset (mixed)?
    • Wat zou een toepassing kunnen zijn van git reset soft?
Git reset

Bron: www.theserverside.com

Lesprogramma

GitOps in a nutshell

Figuur 1: GitOps in a nutshell (Bron: vocal.media)

  • GitOps Betekenis
    • Reconciliation
  • Wekelijkse Opdracht
    • Discussie over het vormen van groepen
    • Introductie tot cursus rubrics CDMM — Nodig voor Wekelijkse Opdracht reflectie
    • Introductie deze week Opdracht

PAUZE — 15 min.

  • Doornemen huiswerk vragen
  • Maak de online oefeningen van module 2 en 3 van Learn git branching (4 en 5 optioneel)
    • Ramping up
    • Moving work around
Learn Git branching
  • Bespreken "advanced" termen
    • De staging area (en hoe git reset nou precies werkt)
    • Het netjes maken van commit messages en hergroeperen van commits
    • De stash
    • Cherry picking
    • remotes
    • Changes rebasen i.p.v. mergen
git cherry-pick

Vooruitblik

Volgende DevOps les over Git workflows, alternatieven voor git branches en GitOps. Bekijk het huiswerk ook!

Key Stone

Leerdoelen

  • Je kunt uitleggen wat GitOps is, de rol die Git hierin speelt en de betekenis van woorden 'runtime', 'reconcilliation' en 'desired state' hierbij
  • Je kent de basis Git commando's, als add, commit, push, pull, stash en concepten als Git's four area's
  • Je kent ook enkele geavanceerdere Git commando's en werkwijzen zoals git reset, git cherry-pick, rebasing en het manipuleren van de historie met amend en revert
  • Je kunt uitleggen hoe Git branching 'goedkoop' heeft gemaakt

Bronnen

Last change: 2025-01-13