Git 🌙
Chapters ▾ 2nd Edition

2.1 Grunder i Git - Skaffa ett Git-förvar

Om du bara har möjlighet att läsa ett kapitel för att komma igång med Git, så är detta rätt kapitel. Detta kapitel täcker de grundläggande kommandon i Git du behöver för att utföra majoriteten av de saker som du kommer stöta på. Efter att ha läst kapitlet, skall du kunna konfigurera och initiera ett förvar, lägga till och ta bort revisionshantering av filer, samt preparera och spara versioner. Vi kommer också att visa dig hur du konfigurerar Git att ignorera vissa filer och vissa filmönster, hur du lätt och snabbt gör misstag ogjorda, hur man kollar i historiken för ditt projekt, visar ändringar mellan sparade versioner, samt hur man hämtar information från fjärrförvar.

Skaffa ett Git-förvar

Vanligtvis skaffar du ett Git-förvar på något av dessa två sätt:

  1. Du tar en lokal mapp som för närvarande inte är versionskontrollerat, och gör den till ett Git-förvar, eller

  2. Du kan klona ett existerande förvar från någonstans.

Vilket du än väljer, så har du i slutändan ett lokalt förvar på din dator, redo att arbeta med.

Initialisera ett förvar i en befintlig mapp

Om du har en projektmapp som för närvarande inte är versionskontrollerat och du vill börja hantera det med Git ställer du dig först i katalogen i fråga. Det ser lite olika ut beroende på vilket operativsystem du använder:

i Linux:

$ cd /home/user/my_project

på Mac:

$ cd /Users/user/my_project

i Windows:

$ cd /c/user/my_project

och skriv:

$ git init

Detta skapar en ny underkatalog som heter .git som innehåller alla nödvändiga filer — ett skelett för Git-förvaret. Ännu så länge är inget i ditt projekt spårat. (Se Git Internals för mer information om exakt vilka filer som finns i .git katalogen du nyss skapade.)

Om du vill börja versionshantera existerande filer (till skillnad från en tom mapp), skall du förmodligen spåra filerna och göra en första version. Du kan åstadkomma det med ett fåtal git add kommandon som specificerar de filer du vill spåra, följt av kommandot git commit:

$ git add *.c
$ git add LICENSE
$ git commit -m 'initial projektversion'

Vi kommer gå igenom vad dessa kommandon inom kort. Nu har du ett Git-förvar med spårade filer och en första version (commit).

Klona ett existerande förvar

Om du vill ha en kopia av ett existerande Git-förvar — till exempel för ett projekt som du gärna vill bidra till — så behöver du kommandot git clone. Om du känner till andra versionshanteringssystem som t.ex. Subversion, kommer du notera att kommandot är "clone" och inte "checkout". Det finns en viktig distinktion — istället av att få en arbetskopia, får Git en fullständig kopia av i princip all data som servern har. Varje version av filen för hela projektets historia hämtas normalt när du kör git clone. Ifall serverns disk blir korrupt kan du i själva verket ofta använda nästan vilken klon som helst på någon klient för att återskapa all information som servern hade då förvaret klonades (man kan förlora några krokar på serversidan och liknande, men all versionshanterad data kommer att finnas — se Skaffa Git på en server för mer detaljer).

Du klonar ett förvar med git clone <url>. Om du till exempel vill klona det Git-länkade förvaret kallat libgit2, kan du göra såhär:

$ git clone https://github.com/libgit2/libgit2

Det skapar en mapp kallad libgit2, initierar en .git-mapp inuti den, hämtar all data för det förvaret, och checkar ut en arbetskopia av den senaste versionen. Om du går ner i libgit2-mappen som nyss skapades kommer du se projektfilerna där, redo att arbeta på eller användas.

Om du vill klona förvaret till en mapp som heter något annat än libgit2, går det att specificera den nya mappens namn som ett extra argument:

$ git clone https://github.com/libgit2/libgit2 mylibgit

Det kommandot gör samma sak som det tidigare, men målmappen kallas mylibgit.

Git har ett flertal olika överföringsprotokoll du kan använda. Det föregående exemplet använder https://-protokollet men du kan också hitta git:// och användare@server:sökväg/till/förvar.git, som använder överföringsprotokollet SSH. Skaffa Git på en server kommer introducera alla tillgängliga val som servern kan konfigurara för att komma åt dit Git-förvar, samt för- och nackdelarna med de olika valen.

scroll-to-top