Huskeseddel til Git-kommandoer
Git sporer ændringer i dine filer som en række commits i et repository. Disse kommandoer dækker den daglige arbejdsgang: oprette et repo, gemme arbejde, forgrene, flette og dele med en fjern. Hold denne huskeseddel åben mens du lærer.
| Kommando | Hvad den gør |
|---|---|
| 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. |
Noter
- De fleste kommandoer accepterer flag (som -m for besked eller -a for alle); kør 'git help <kommando>' for den fulde liste.
- Grennavne er billige og bortkastelige — commit ofte på en feature-gren og merge derefter til main.
- Før destruktive kommandoer som rebase eller reset, sørg for at dit arbejde er commitet eller stash'et.
Ofte stillede spørgsmål
- Hvad er forskellen på merge og rebase?
- Merge kombinerer historikker med en ny commit, der har to forældre. Rebase genafspiller dine commits ovenpå en anden gren, hvilket giver en lineær historik men omskriver commit-ID'er.
- Hvordan fortryder jeg en commit?
- Brug 'git revert <commit>' for at tilføje en ny commit, der fortryder ændringen (sikker, delt historik). 'git reset' omskriver historikken og bør ikke bruges på delte grene.
- Hvad er forskellen på git pull og git fetch?
- Fetch downloader commits og referencer fra en fjern uden at røre dit arbejdstæ. Pull laver en fetch og merger eller rebaser derefter ændringerne ind i din nuværende gren.
- Hvornår skal jeg bruge git stash?
- Stash lægger ikke-committede ændringer midlertidigt til side, så du kan skifte gren eller hente rent, og genopretter dem senere med 'git stash pop'.