Hoppa till innehåll

Det versionshantering löser

  • Hur versionshantering löser problemen du stötte på i övningen.
  • Vad Git är.
  • Skillnaden mellan Git och tjänster som Forgejo och GitHub.

Nu vet du vilka problemen är. Innan du installerar Git i modul 2 är det bra att veta vad det gör åt dem, så att kommandona i modul 3 får en mening från början.

Ett versionshanteringsprogram sparar inte kopior med nya namn. Det finns en fil, och varje gång du väljer att spara en version lägger programmet till den i historiken. I GitGitEtt program som sparar versioner av filerna i ett projekt, så att man kan se vad som ändrats, gå tillbaka till tidigare versioner och arbeta flera samtidigt.Läs mer om Git kallas en sparad version en commitCommitEn sparad version av projektet i Git, med en beskrivning av vad som ändrats, vem som gjorde det och när.Läs mer om commit, och historiken ligger i ett repositoryRepository (repo)En projektmapp som Git håller ordning på: alla filer i projektet plus hela historiken av sparade versioner.Läs mer om repository, projektets samling av alla versioner.

Varje commit innehåller:

  • hur filerna såg ut just då
  • ett meddelande som du skriver, till exempel Lägg till dag 3: Gävle
  • vem som sparade den och när

Då försvinner problemen från övningen:

Problem i övningen Med versionshantering
Vilken fil är den senaste? Det finns bara en fil. Den senaste versionen är den du har framför dig.
Vad ändrades mellan två versioner? Programmet visar raderna som skiljer dem åt.
Vem ändrade, och när? Det står i varje commit.
Varför gjordes ändringen? Det står i meddelandet.
Hur såg den första versionen ut? Alla versioner finns kvar och kan visas när som helst.
Mappen fylls av kopior Inga kopior behövs. Historiken ligger i repositoryt.

Versionshantering gör också att flera kan arbeta samtidigt. Var och en arbetar i sin egen branchBranchEn egen utvecklingslinje i ett repository, där man kan göra ändringar utan att påverka huvudversionen.Läs mer om branch, en egen utvecklingslinje, och ändringarna förs sedan ihop med en mergeMergeAtt föra ihop ändringarna från två branches till en. Git gör det automatiskt när det går och ber om hjälp när samma rader ändrats på olika sätt.Läs mer om merge. Det lär du dig i modul 4.

Git är inte samma sak som Forgejo eller GitHub

Section titled “Git är inte samma sak som Forgejo eller GitHub”

Git är ett program på din dator. Det håller ordning på historiken i dina repositoryn.

Forgejo, GitHub och GitLab är tjänster som lagrar Git-repositoryn på en server, så att flera kan dela dem och samarbeta. De lägger till sådant som Git inte har själv, till exempel ärenden och granskning av ändringar. Kodkollektivet använder Forgejo. Du lär dig använda en sådan tjänst i modul 5 och 6.

Den här kursen är själv versionshanterad med Git. Varje ändring i en lektion sparas som en commit med ett meddelande som säger vad som ändrats och varför. Innan en ändring publiceras granskar en människa den. Om något blir fel går det att se exakt vilken ändring som orsakade det, och att gå tillbaka till versionen före.

1. Vad innehåller en commit i Git? (Välj alla som stämmer)
Visa rätt svar
  • Hur filerna såg ut när den sparades
  • Ett meddelande om vad som ändrades
  • Vem som sparade den och när
2. Vad är skillnaden mellan Git och GitHub (eller Forgejo)?
Visa rätt svar
  • Git är ett program på din dator, GitHub och Forgejo är tjänster som lagrar repositoryn på en server: Git fungerar utan någon tjänst. Tjänsterna gör det lätt att dela och samarbeta.
3. Git är distribuerat. Vad betyder det?
Visa rätt svar
  • Varje kopia av ett repository har hela historiken: Därför kan du spara versioner och titta i historiken utan att vara ansluten till en server.
4. Sparar Git en ny version varje gång du sparar filen i texteditorn?
Visa rätt svar
  • Nej, en version sparas först när du gör en commit: Du bestämmer själv när en ändring är klar att sparas, och vad meddelandet ska vara.

  • Med versionshantering finns det en fil och en historik i stället för många kopior.
  • I Git kallas en sparad version en commit, med meddelande, författare och tidpunkt, och historiken ligger i ett repository.
  • Git är ett program på din dator. Forgejo och GitHub är tjänster som lagrar repositoryn på en server för att dela och samarbeta.
  • I modul 2 installerar du Git, och i modul 3 gör du om övningen med Git.