Chapters ▾ 2nd Edition

A2.1 Bilaga B: Bädda in Git i dina applikationer - Git på kommandoraden

Om din applikation är för utvecklare är chansen stor att den skulle kunna dra nytta av integration med versionshantering. Även applikationer som inte är för utvecklare, såsom dokumentredigerare, kan potentiellt dra nytta av versionshanteringsfunktioner, och Gits modell fungerar mycket bra för många olika scenarier.

Om du behöver integrera Git med din applikation har du i praktiken två alternativ: starta ett skal och anropa kommandoradsprogrammet git, eller bädda in ett Git‑bibliotek i din applikation. Här går vi igenom kommandoradsintegration och flera av de mest populära inbäddningsbara Git‑biblioteken.

Git på kommandoraden

Ett alternativ är att starta en skalprocess och använda Gits kommandoradsverktyg för att göra jobbet. Detta har fördelen att vara det kanoniska sättet, och alla Gits funktioner stöds. Det råkar dessutom vara ganska enkelt, eftersom de flesta körtidsmiljöer har ett relativt enkelt sätt att anropa en process med kommandoradsargument. Detta angreppssätt har dock vissa nackdelar.

En är att all utdata är ren text. Det betyder att du måste tolka Gits ibland skiftande utdataformat för att läsa framsteg och resultatinformation, vilket kan vara ineffektivt och felkänsligt.

En annan är bristen på felåterhämtning. Om ett kodförråd är skadat på något sätt, eller om användaren har ett felaktigt konfigurationsvärde, kommer Git helt enkelt att vägra utföra många operationer.

Ytterligare en är processhantering. Git kräver att du upprätthåller en skal‑miljö i en separat process, vilket kan innebära oönskad komplexitet. Att försöka samordna många av dessa processer (särskilt när man potentiellt kommer åt samma kodförråd från flera processer) kan vara ganska utmanande.