Home

versionskontroll

Versionskontroll är ett system som gör det möjligt att följa hur filer och projekt förändras över tid. Det lagrar olika versioner i ett eller flera arkiv, vilket underlättar spårning av vad som ändrats, av vem och när. Systemet gör det möjligt att återgå till tidigare tillstånd, jämföra skillnader mellan versioner och hantera flera samtidiga arbeten i ett projekt.

Ett versionskontrollsystem sparar varje förändring som en commit eller revision. Varje commit innehåller en ögonblicksbild av

Det finns två huvudtyper av system: centraliserade och distribuerade. Centraliserade system som Subversion (SVN) har en

Vanliga arbetsflöden inkluderar att skapa funktionella eller temabaserade grenar, arbeta isolerat och senare skicka in ändringar

Fördelarna med versionskontroll är spårbarhet, möjlighet att återskapa tidigare versioner, förbättrat samarbete, konfliktlösning och reproducibilitet av

Historiskt utvecklades de tidigaste systemen under 1970–1980-talen (t.ex. RCS, CVS). Git, skapat 2005 av Linus Torvalds,

filer,
ett
meddelande,
tid
och
författare.
Repositories
kan
vara
lokala
eller
kopplade
till
en
fjärrserver.
Arbete
sker
ofta
i
grenar
(branches);
en
huvudgren
används
för
stabil
kod,
medan
nya
funktioner
utvecklas
i
separata
grenar
och
senare
sammanfogas
genom
merge.
Diff-verktyg
visar
skillnader
mellan
versioner,
och
ibland
uppstår
konflikter
som
kräver
manuell
åtgärd.
enda
gemensam
central
lagringsplats.
Distribuerade
system
som
Git,
Mercurial
och
Fossil
låter
varje
användare
ha
en
fullständig
kopia
av
historiken
och
dela
ändringar
via
fjärrrepositorier.
genom
pull
requests
eller
merge
requests,
ofta
kompletterat
med
kodgranskning
och
kontinuerlig
integration.
bygg-
och
testmiljöer.
Användningen
är
bred
inom
mjukvaruutveckling,
dokumentation,
dataanalys
och
andra
projekt
där
filer
uppdateras
över
tid.
har
blivit
dominerande
inom
mjukvaruutveckling
tack
vare
distributionsmodellen,
snabbhet
och
starkt
stöd
för
grenar
och
sammanslagningar.