Git & GitHub
Versies beheren
De voordelen
Werken met verschillende versies
Versie met extra pagina die nog niet af is
Versie met feedback collega
Waar is nu die versie die de docent vorige week wel goed vond?
Testje met andere kleuren
Moeilijkheden
Werken met verschillende versies
"The stupid content tracker"
✨
✨
Command line
Hoe werkt een computer?
Alles is een bestand
Bestanden zitten in een hiërarchische structuur van mappen.
word.docx
Adobe Photoshop
rawr.jpg
Command Line Interfact (CLI)
Nieuwe map genaamd Homework op het bureaublad
Graphical User Interface (GUI)
Quick demo
pwd
ls
cd mapnaam
mkdir voorbeeldmapje
cd voorbeeldmapje
touch voorbeeldfile.txt
cd ..
Terminal
PowerShell
Mac
Windows
Windows Terminal
Command line
~Documents/webscripting/week-1 $ pwd
Users/sjouwkevaparys/Documents/webscripting/week-1
~Documents/webscripting/week-1 $
Nieuwe lijn. Hier kan je een nieuw commando schrijven naast het dollarteken.
command line prompt
Het dollarteken $ is een aanduiding van waar een commando start. Kopieer dit nooit.
Het commando kan uit meerdere woorden en tekens bestaan.
De response van de computer
⚡ Command Line blijft krachtig
Integrated terminal in VScode
Git
Wat is git?
git <commandonaam>
git init
Aan de slag met git
Stel: we willen dit design coderen
Navigation
Hero
Footer
Commits
$ git add .
$ git commit -m "add navigation"
$
Een punt . betekent: 'alle files waarin er aanpassingen zijn gebeurd'.
Switchen naar andere commit
$ git log
commit c34b8dad4699a39edf6e25f4dbf7480820533ac9 (HEAD -> main)
Author: Sjouwke Van Parys <sjouwke.vanparys@arteveldehs.be>
Date: Sat Feb 1 13:03:47 2025 +0100
add navigation
$ git checkout c34b8dad4699a39edf6e25f4dbf7480820533ac9
$
git checkout <id>
git log
toont je een overzicht van de commits💡 Tip: je hoeft niet het volledige ID te kopiëren. De eerste 6 karakters zijn vaak voldoende uniek.
Status
$ git status
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: css/main.css
modified: index.html
no changes added to commit (use "git add" and/or "git commit -a")
$
git status
toont aan in welke files er aanpassingen zijn gebeurdVoorbeeld
Je bent al even bezig aan het bouwen van een onepager. De navigatie en footer zijn klaar, maar aan de hero ben je nog bezig.
Tijdens het feedbackmoment met de docent of klant wil je graag enkel de zaken tonen die al af zijn.
Wat nu? 😱
Use case
Geen paniek!
Use case
En dan nu in de terminal:
$ git status
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: css/main.css
modified: index.html
no changes added to commit (use "git add" and/or "git commit -a")
$ git add .
$ git commit -m "hero part 1: add html"
$ git log
commit c34b8dad4699a39edf6e25f4dbf7480820533ac9 (HEAD -> main)
Author: Sjouwke Van Parys <sjouwke.vanparys@arteveldehs.be>
Date: Sat Feb 2 10:04:55 2025 +0100
hero part 1: add html
commit 7894ezeazr7894789rez4r65ez4r6ezr464rer4r (HEAD -> main)
Author: Sjouwke Van Parys <sjouwke.vanparys@arteveldehs.be>
Date: Sat Feb 1 18:44:18 2025 +0100
add footer
commit c34b8dad4699a39edf6e25f4dbf7480820533ac9 (HEAD -> main)
Author: Sjouwke Van Parys <sjouwke.vanparys@arteveldehs.be>
Date: Sat Feb 1 13:03:47 2025 +0100
add navigation
$ git checkout 7894ezeazr
$
Use case
Git heeft veel krachtige functies, zoals:
🌳 Branches – Werk in parallel aan verschillende versies van de code.
🔍 Pull Requests – Vraag om wijzigingen samen te voegen in een project.
🍒 Cherry Picking – Haal specifieke commits uit een andere branch.
🚀 Deze extra functies zijn handig, maar voor nu laten we ze achterwege! Wij focussen enkel op committen en pullen van code voor oefeningen.
Meer mogelijkheden met git
GitHub
Git hosting platform
Remote repository
Samenwerken
GitHub account aanmaken
Stap 1: Ga naar github.com
Stap 2: Klik op "Sign up"
Stap 3: Vul je ⚠️ Artevelde e-mailadres in
Je kan later nog je privé e-mailadres koppelen
Stap 4: Kies een sterk wachtwoord
Stap 5: Kies een ⚠️ professionele username
Dit is voor iedereen zichtbaar en zal je later nog gebruiken.
Stap 6: Verifieer je e-mailadres
Git installeren
⚠️ ⚠️ ⚠️
🤝 We doen alle stappen nu samen.
🐾 Volg stap voor stap goed mee.
❌ Verschillend voor Macbook en Windows gebruikers:
1️⃣ We starten met installatie voor Macbook.
2️⃣ Daarna volgt Windows.
⚠️ ⚠️ ⚠️
Git installeren op Macbook
Stap 1: Open Terminal
Stap 2: Installeer Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Git installeren op Macbook
brew install git
Stap 3: Installeer Git via Homebrew
git -v
Stap 4: Check of de installatie gelukt is
De response zou er ongeveer zo moeten uitzien: git version 2.39.3 (Apple Git-146)
Git installeren op Windows
Stap 1: Download Git voor Windows:
Git installeren op Windows
Stap 2: Voer het gedownloade bestand uit:
Belangrijke opties tijdens installatie:
Git installeren op Windows
Stap 3: Open PowerShell of Windows Terminal
git -version
Stap 4: Check of de installatie gelukt is
De response zou er ongeveer zo moeten uitzien: git version 2.43.0.windows.1
⚠️ ⚠️ ⚠️
🤝 Vanaf nu zijn de stappen terug gelijk voor zowel Windows als Mac gebruikers.
⚠️ ⚠️ ⚠️
Eerste Git configuratie
Windows: Open PowerShell of Windows Terminal
git config --global user.name "Jouw Naam"
Stap 1: Configureer je naam
Mac: Open Terminal
git config --global user.email "jouw@artevelde-email.com"
Stap 2: Configureer je e-mail
Installatie verifiëren
git --version
git config --list
De response zou er ongeveer zo moeten uitzien:
MacBook-Pro:~ gebruiker$ git config --list
user.name=Jouw Naam
user.email=jouw@email.com
core.editor=code
init.defaultbranch=main
core.autocrlf=input
credential.helper=osxkeychain
Toegang tot
oefeningen & demo's
Github repository
Github repository
Repository clonen
Repository clonen
Stap 1: Maak eerst de juiste mappenstructuur
pwd
Repository clonen
Stap 2: Voer het clone commando uit
git clone https://github.com/dvggent-2425-webscripting/code-lessen.git
Je hebt nu een map genaamd 'code-lessen' op je computer staan.
Stap 2: Voer het clone commando uit
Wekelijkse updates
Wekelijkse updates
⚠️ Aangezien je lokaal aan de oefeningen werkt, zullen er altijd changes zijn:
Stap 1: Sla je changes altijd éérst op door een commit te maken:
git add .
git commit -m "Add fix week 1 oefening 1: kopjes tellen"
Stap 2: Daarna kan je de nieuwe oefeningen binnenhalen:
git pull
Tips voor commits