Hoppa till huvudinnehåll

Vad och varför?

Vad äär Git?versionhantering?

GitVersionhantering äär etten väletablerat och modernt versionshanteringsprogramprocess som anväanvänds brett i en hel del olika sektorer ute i världen. Från enkla små hobbyprojekt till större och mycket komplicerade kodbaser som Linux-kerneln (som det ursprungligen designades för av Linus Torvalds). 

Tillskillnad ifrån tidigare versionshanteringsprogram (före 2005, dvs.) är Git ett distribuerat versionshanteringsprogram. Det innebär att varje utvecklare har en full kopia av kodbasen och alla tidigare förändringar. Tidigare system som CVS (Concurrent Version Systems) och dess efterföljare (t.ex. Subversion) använde en central versionshanteringstjänst där varje utvecklare checkade ut en modul av koden som denne sedan ändrade i och checkade in igen när hen var klar med förändringen.

Skillnaden mellan systemet är främst i vilken ordning man gör merge och commit. I Git är det tillåtet att göra en commit av ditt arbete utan att behöva inkorporera förändringar på den centrala servern (vilket inte är särskilt svårt med två till tre utvecklare, men i princip omöjligt med tusentals utvecklare) vilket gör Git mer lämpligt för stora och ej centraliserade utvecklingsprojekt. Det är först vid en s.k. push som den centrala versionen måste tas i aktning i Git.   

 

  • Versionshanteringsprogram.

  • Skapades 2005 för att hantera och spåra ändringar i källkod och andra filer över tiden. Det är ett verktyg som används främst inom mjukvaruutveckling men kan även vara till nytta för att hantera ändringar i andra typer av dokument, som textdokument eller konfigurationsfiler.

    Versionhanteringssystem (VCS) gör det möjligt för utvecklare att spåra och hantera ändringar i sina projekt över tiden. Det ger också möjlighet att återställa tidigare versioner av filer och samarbeta med andra utvecklare på ett organiserat sätt.

    Centraliserade versionhanteringssystem (CVCS): 

    I ett CVCS finns det en central server som lagrar alla filer och deras historik. Utvecklare checkar ut filer från servern för att göra ändringar och checkar sedan in dem igen för att spara ändringarna till servern. 

    Distribuerade versiohanteringssytem (DVCS):

    I ett DVCS har varje utvecklare en komplett kopia av hela projektets historik på sin lokala maskin. Detta gör att utvecklare kan arbeta offline och göra ändringar utan att vara anslutna till en central server. Ändringarna kan sedan synkroniseras och delas med andra utvecklare vid behov.

    Vad är Git?

    Git är ett DVCS som utvecklades av Linus Torvalds för att hantera den enorma källkoden till Linux. Git lämpar sig väldigt väl till open source utveckling eftersom utvecklarna inte är beroende av en central server. Git är utformat för att vara snabbt, effektivt och skalbart för både små och stora projekt. Det tillåter flera utvecklare att samarbeta och spåra ändringar i en källkodsbas eller vilken annan typ av filstruktur som helst. 

  • Varför

Git? 

Som ett exempel:

Varför

Ni ska vibygga användaen Git?

hemsida,
    du
  • och dina kurskamrater, som en del av webutvecklingskursen. Ni börjar med att bygga varsin sida i HTML och CSS. Men sen när det kommer till att få sidorna att fungera med varandra blir det helt plötsligt väldigt, väldigt jobbigt. Du och din kompis har gjort helt olika med era klasser och hur era knappar fungerar. 

    EnkeltGit delaär kodprojekt.menat att skapa en gemensam grund för alla inblandade. Förändringarna som dina klasskamrater gör behöver oftast du också. Om din kompis redan har gjort en knapp som är snygg kan du bara kopiera den, istället för att uppfinna hjulet igen.

  • Samma kod, flera enheter.

  • Versionshistorik.

  • Enkelt.

  • Används världen över.

  • Ger struktur.