Git-kommandon för säkrare ändringar i projektet

17 oktober 2026

Git-kommandon som en "cheat sheet" visar commits, träd och filer i en historik.

Du ska publicera en ändring på webbplatsen, men terminalen visar filer du inte väntade dig och en commit innehåller kanske för mycket. Git-kommandon hjälper dig oftast att reda ut läget utan att börja om, men rätt val beror på om ändringen bara finns i arbetskatalogen eller redan har delats med andra.

Diagrammet visar viktiga arbetsflöden: bildskanning, körtidssäkerhet, efterlevnad, Kubernetes-övervakning och applikationsövervakning. Tänk på det som en git commands cheat sheet för säkerhet.

Snabbguide till Git-kommandon för vardagsjobb

  • Kontrollera först med git status och git diff innan du ändrar något.
  • Granska urvalet med git diff --staged före commit.
  • Hämta säkert med git fetch; integrera separat när du vet vad som har ändrats.
  • Välj rätt ångra-kommando: restore för filer, revert för delade commits, reset för lokal historik.

Börja med status innan du ändrar något

En kort kontroll kan spara dig från att råka lägga upp en halvfärdig sida eller en lokal inställningsfil. Kör git status först: kommandot visar vilken branch du är på och om filer är ändrade, nya eller redo att committas.

För att se själva innehållet använder du git diff för ändringar som ännu inte är staged, alltså valda för nästa commit. Efter git add visar git diff --staged vad som faktiskt kommer med. Jag tycker att den sista kontrollen är värd vanan, särskilt när webbprojektet innehåller både textändringar och automatiskt genererade filer.

Kommandon för att skapa och dela ändringar

När statusen är begriplig blir arbetsflödet ganska rakt. En commit sparar ett urval av ändringar som en punkt i projektets historik; den skickas inte automatiskt till en server.

UppgiftKommandoVad det gör
Skapa ett lokalt repogit initStartar Git-hantering i katalogen.
Hämta ett repogit clone Kopierar ett befintligt repo till datorn.
Välja filergit add filnamnLägger filens ändringar i stagingområdet.
Välja delar av en filgit add -pLåter dig välja ändringar stycke för stycke.
Skapa commitgit commit -m "Beskrivning"Sparar det staged urvalet i historiken.
Skicka commitsgit pushPublicerar lokala commits till fjärrrepon.
Visa historikengit log --oneline --graphVisar commits i kompakt grafisk form.

Om du exempelvis ändrar sidans rubrik och samtidigt får med en lokal konfigurationsfil kan git add -p låta dig välja bara rubrikändringen. Granska sedan git diff --staged och committa. Det är ett mer kontrollerat val än att reflexmässigt stagea allt med git add ..

Välj branch när arbetet behöver hållas isär

En branch låter dig utveckla en ändring utan att blanda in den direkt i huvudlinjen. Skapa och byt till en ny branch med git switch -c feature/ny-landningssida; byt tillbaka med git switch main.

När arbetet är klart kan du föra in branchens commits med git merge feature/ny-landningssida. Om en annan branch redan innehåller commits som saknas lokalt kan git rebase main lägga om din lokala commitserie ovanpå den. Git-dokumentationen beskriver rebase som att commits återappliceras på en ny bas; eftersom det skriver om commit-historik bör du undvika att rebase:a commits som redan delas med andra.

Fetch och pull gör olika saker

En vanlig överraskning är att git pull gör mer än att hämta information. git fetch hämtar uppdateringar från fjärrrepon utan att integrera dem i din aktuella branch, medan git pull hämtar och integrerar ändringarna.

För en webbplatsbranch där du vill se vad teamet har publicerat innan du blandar in det, kör git fetch och inspektera sedan skillnaden. När du redan har granskat läget kan git pull --ff-only vara ett tydligt val: kommandot avbryter i stället för att skapa en merge om din branch inte kan uppdateras som en enkel framflyttning. Den officiella Git-referensen listar kommandona för hämtning, integrering och delning.

Ångra rätt sak med restore, reset eller revert

De tre kommandona låter snarlika, men påverkar olika delar av Git. git restore återställer filinnehåll, git reset flyttar branchens position eller ändrar stagingområdet, och git revert skapar en ny commit som tar tillbaka effekten av en tidigare commit.

SituationTrolig innebördGör så här
En filändring ska bort, men är inte committadArbetskopian innehåller oönskat innehåll.git restore filnamn
En fil ska ur staging, men ändringen ska finnas kvarFilen är vald för commit av misstag.git restore --staged filnamn
En felaktig commit har redan delatsAndra kan redan ha hämtat committen.git revert
En lokal commit ska tas bort ur den egna historikenHistoriken behöver flyttas tillbaka.Kontrollera först läget; använd git reset med omsorg.

Det avgörande är alltså om committen redan är offentlig. Git-dokumentationen rekommenderar en ny återställande commit när ändringen har delats, medan reset ändrar historikens position. Jag skulle välja revert för en delad commit, eftersom den metoden inte kräver att teamets redan publicerade historik skrivs om. Mer om skillnaderna finns i dokumentationen för git revert.

Tre kontroller som gör kommandolistan säkrare

Kommandon som raderar filer eller skriver om historik förtjänar en paus innan du kör dem. Om du är osäker, börja med att läsa status och diff; de visar vad Git faktiskt tänker ändra.

  • Före commit: kör git status och git diff --staged.
  • Före integration: kör git fetch, granska brancherna och välj sedan merge eller pull.
  • Före historikändring: kontrollera om committen har pushats eller används av andra.
  • Vid tillfälligt avbrott: spara ändringar med git stash push -m "pågående arbete" och återta dem senare med git stash pop.

Om terminalen fortfarande känns som en vägg av kommandon, skriv git help , till exempel git help restore. En bra snabbguide ska hjälpa dig att välja nästa säkra steg, inte locka dig att köra det första kommando som ser bekant ut.

Vanliga frågor

Kör git add -p för att välja ändringar stycke för stycke i stället för att stagea hela filen. Kontrollera sedan urvalet med git diff --staged innan du skapar committen med git commit.
git fetch hämtar uppdateringar från fjärrrepon utan att integrera dem i din aktuella branch, så du kan granska läget innan du blandar in ändringarna. git pull hämtar och integrerar dem. Efter granskning kan git pull --ff-only användas för att avbryta om branchen inte kan uppdateras som en enkel framflyttning.
Använd git restore filnamn för att återställa en filändring som inte är committad, eller git restore --staged filnamn för att ta bort en fil från staging utan att kasta ändringen. git revert skapar en ny commit som tar tillbaka effekten av en commit som redan har delats. git reset flyttar branchens position eller ändrar stagingområdet och bör användas försiktigt när historiken är lokal.
Undvik att rebase:a commits som redan delas med andra, eftersom rebase skriver om commit-historiken. Rebase kan lägga om lokala commits ovanpå en ny bas, till exempel med git rebase main, men passar bäst när commitserien ännu inte har delats.
Betygsätt artikeln

Genomsnitt: 0.0 / 5 · 0 betyg

Taggar

git commits brancher stagingområde fjärrarkiv
Kommentarer (0)
Lägg till en kommentar