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.

Bijgewerkt:

CommandoWat het doet
git initCreate a new, empty Git repository in the current directory.
git cloneDownload a remote repository and its full history to your machine.
git statusShow changed, staged and untracked files in the working tree.
git addStage changes (files) to be included in the next commit.
git commitRecord staged changes as a new commit with a message.
git logDisplay the commit history of the repository.
git diffShow unstaged or staged differences between states.
git branchList, create or delete branches in the repository.
git checkout / switchSwitch branches or restore files (switch is the modern command).
git mergeJoin another branch's history into the current branch.
git rebaseReapply commits on top of another base commit, rewriting history.
git pullFetch from a remote and merge the changes into the current branch.
git pushUpload local commits to a remote repository.
git stashTemporarily shelve uncommitted changes to reapply later.
git remoteManage the set of remote repositories you track.

Opmerkingen

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'.