Git-track Les 2 van 7

🐙 Je eerste repository

git init, git add, git commit — van lege map naar bijgehouden project.

⏱ 25 min6 stappen
Stap 1 / 6

git init — een repository starten

Elke Git-project begint met git init. Dit commando maakt een verborgen .git map aan in je projectmap — dáár slaat Git alle geschiedenis op.

Een nieuw project starten
mkdir mijnproject        # nieuwe map aanmaken
cd mijnproject           # de map ingaan
git init                 # Git initialiseren
Output: Initialized empty Git repository in /mijnproject/.git/
Wat doet .git?

De .git map bevat alles wat Git nodig heeft:

  • • Alle commits en hun inhoud
  • • Branches en tags
  • • Configuratie voor dit project
  • • Remote-verbindingen (GitHub)

Verwijder .git nooit — dan verlies je de hele geschiedenis.

Bestaand project

Je kunt ook git init uitvoeren in een map die al bestanden bevat:

cd bestaandproject
git init

Git begint dan met bijhouden — de bestaande bestanden zijn nog "untracked".

📋 Overzicht van de workflow
Working Dir
je bestanden
→ git add →
Staging Area
klaargelegd
→ git commit →
Repository
opgeslagen
Stap 2 / 6

git status — wat is de situatie?

git status is het commando dat je het meest gebruikt. Het toont de huidige staat van je repository: welke bestanden zijn gewijzigd, klaargelegd of nieuw.

Na git init — lege repo
$ git status
On branch main
No commits yet
nothing to commit (create/copy files and use "git add" to track)
Na het aanmaken van een bestand
$ git status
On branch main
Untracked files:
  index.html
nothing added to commit but untracked files present (use "git add" to track)
Na git add index.html
$ git status
On branch main
Changes to be committed:
  new file: index.html
💡 Gewoon altijd uitvoeren

Typ git status vóór en na elk ander Git-commando. Het vertelt je altijd precies wat er aan de hand is en wat je volgende stap moet zijn.

Stap 3 / 6

git add — bestanden klaarzetten

git add verplaatst bestanden naar de Staging Area — de klaarlegplaats voor de volgende commit.

Vormen van git add
git add index.html

Eén specifiek bestand

git add css/style.css

Bestand in submap

git add .

Alle gewijzigde en nieuwe bestanden

git add css/

Alles in een map

git add *.html

Alle .html bestanden

Waarom een Staging Area?

Je kunt meerdere bestanden tegelijk gewijzigd hebben, maar toch aparte commits maken:

# Stel: je hebt bugfix én nieuwe feature
git add bugfix.php       # alleen de bugfix
git commit -m "Fix login bug"

git add feature.html
git commit -m "Add contact form"

Zo blijft je geschiedenis overzichtelijk.

⚠️ git add . met zorg gebruiken

git add . voegt alles toe — ook bestanden die je niet wilt committen (wachtwoorden, node_modules, .env). In les 7 leer je hoe je dit voorkomt met .gitignore.

Stap 4 / 6

git commit — een snapshot opslaan

git commit slaat alles uit de Staging Area definitief op in de repository. Elke commit krijgt een unieke ID en een beschrijving.

Basis commit
git commit -m "Beschrijving van wat je deed"

De -m vlag staat voor "message" — de beschrijving van de commit.

Output na een commit
$ git commit -m "Voeg homepage toe"
[main (root-commit) a3f9b21] Voeg homepage toe
 1 file changed, 15 insertions(+)
 create mode 100644 index.html

a3f9b21 is de verkorte commit-hash — een unieke ID voor deze commit.

✅ Goede commit messages
  • ✓ "Voeg contactformulier toe"
  • ✓ "Fix fout in login-validatie"
  • ✓ "Verwijder ongebruikte CSS"
❌ Slechte commit messages
  • ✗ "update"
  • ✗ "asdfgh"
  • ✗ "fix"
  • ✗ "changes"
🖥️ Oefen de workflow: init → add → commit
Terminal
Probeer: git init, git status, git add index.html, git commit -m "Eerste commit", git log
student@pc:~/mijnproject$
Stap 5 / 6

git log — geschiedenis bekijken

git log toont alle commits in de repository, nieuwste bovenaan.

git log output
commit a3f9b21c7d8e4f1a2b3c4d5e6f7a8b9c0d1e2f3
Author: Jan de Vries <jan@example.com>
Date:   Mon Jan 15 14:30:00 2024

    Voeg contactformulier toe

commit b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0
Author: Jan de Vries <jan@example.com>
Date:   Mon Jan 15 10:00:00 2024

    Voeg homepage toe
Compacte weergave
git log --oneline
a3f9b21 Voeg contactformulier toe
b1c2d3e Voeg homepage toe
c4d5e6f Eerste commit
Handige opties
git log -5 — toon laatste 5 commits
git log --oneline — compact
git log --author="Jan" — filter op auteur
git log index.html — commits voor één bestand
✅ Samenvatting: de basisworkflow
git init
eenmalig
git status
altijd check
git add
klaarzetten
git commit
opslaan

🧠 Kennischeck

🐙

Les 2 afgerond!

Je kent git init, add, commit, status en log — de kern van elke dagelijkse Git-workflow.

Les 3: Geschiedenis & terugdraaien →