user Created with Sketch.
Group 2 Created with Sketch.

Introduktion till git (3 av 10)

Dra tillbaka commits med git reset

I den här övningen kommer vi att lära oss lite mer om hur vi återställer en commit.

Se till att du har ett gäng olika commits i din repo.
  1. Gör lite ändringar i ditt workspace (Ändra innehållet i en fil eller skapa en ny eller liknande).
    Låt oss nu säga att du har arbetat på ett projekt och har gjort klart din commit men att du kom på ett par sista grejer du var tvungen att lägga till. Då vill du kanske inte behöva skapa en helt ny commit för det, utan du vill ha allt i samma commit.
    Då kan du återställa din tidigare commit med hjälp av git reset för att sedan skapa en ny.
  2. Om du skriver git log så ser du alla dina tidigare commits där 
  3. För att identifiera en commit så använder du dig av den hash som står efter "commit". Den senaste comitten i det här fallet är: 0e7a28c16911cc21136d88321076044668b9ae4e
    För att återställa den senaste committen så använder vi oss av hashen till comitten innan. Dvs, vi vill resetta fram till den comitten.
  4. Skriv nu git reset [hashen till committen innan] 
    Nu om du skriver git log så kan du se att din senaste commit har försvunnit.
    Och om du skriver git status så kan du se att alla dina ändringar ligger i ditt workspace.
  5. Skapa nu en ny commit som kommer att innehålla alla dina ändringar.
    Nu kan du testa att skapa och resetta commits tills du känner dig bekväm med det.

 

Todo:
* Tydligare att det är commiten innan.
* "Återställa" inte helt passande ord.
* Förankra till verkligheten. När är det användbart.
* Bild på hur det ska se ut när du är klar.

* Varning för att local kommer att skilja sig mot remote.
* Git amend. 

* Lägg till något för när man gör git push origin branch och får ett felmeddelande.

 

Med det här komandot så fungerar det inte att resetta den absolut första comitten då man måste kunna ange hashen för en tidigare comitt.
Att använda git reset kan vara användbart när man har gjort ändringar i sin repo men man vill inte behöva skapa en helt ny commit för dom.

Snyggt jobbat!

Valfri text