Spiekbriefje Git-commando's
Git volgt wijzigingen in je bestanden als een reeks commits in een repository. Deze commando's dekken de dagelijkse workflow: een repo starten, werk opslaan, vertakken, mergen en delen met een remote. Houd dit blad open tijdens het leren.
| Commando | Wat het doet |
|---|---|
| git init | Create a new, empty Git repository in the current directory. |
| git clone | Download a remote repository and its full history to your machine. |
| git status | Show changed, staged and untracked files in the working tree. |
| git add | Stage changes (files) to be included in the next commit. |
| git commit | Record staged changes as a new commit with a message. |
| git log | Display the commit history of the repository. |
| git diff | Show unstaged or staged differences between states. |
| git branch | List, create or delete branches in the repository. |
| git checkout / switch | Switch branches or restore files (switch is the modern command). |
| git merge | Join another branch's history into the current branch. |
| git rebase | Reapply commits on top of another base commit, rewriting history. |
| git pull | Fetch from a remote and merge the changes into the current branch. |
| git push | Upload local commits to a remote repository. |
| git stash | Temporarily shelve uncommitted changes to reapply later. |
| git remote | Manage the set of remote repositories you track. |
Opmerkingen
- De meeste commando's accepteren flags (zoals -m voor bericht of -a voor allemaal); draai 'git help <commando>' voor de volledige lijst.
- Branchnamen zijn goedkoop en wegwerpbaar — commit vaak op een feature-branch en merge dan naar main.
- Vóór destructieve commando's zoals rebase of reset, zorg dat je werk is gecommit of gestasht.
Veelgestelde vragen
- Wat is het verschil tussen merge en rebase?
- Merge combineert geschiedenissen met een nieuwe commit met twee ouders. Rebase speelt je commits bovenop een andere branch af, wat een lineaire geschiedenis geeft maar commit-ID's herschrijft.
- Hoe maak ik een commit ongedaan?
- Gebruik 'git revert <commit>' om een nieuwe commit toe te voegen die de wijziging ongedaan maakt (veilig, gedeelde geschiedenis). 'git reset' herschrijft geschiedenis en wordt niet op gedeelde branches gebruikt.
- Wat is het verschil tussen git pull en git fetch?
- Fetch downloadt commits en refs van een remote zonder je werkboom aan te raken. Pull doet een fetch en merge of rebase daarna die wijzigingen in je huidige branch.
- Wanneer gebruik ik git stash?
- Stash zet niet-gecommitte wijzigingen tijdelijk opzij zodat je schoon van branch kunt wisselen of pullen, en herstelt ze later met 'git stash pop'.