Home

Versionshantering

Versionshantering, eller versionsstyrning, är en metod och ett verktyg för att hantera förändringar i filer över tid utan att förlora tidigare versioner. Den gör det möjligt att följa vad som har ändrats, av vem, när och varför, samt att återställa tidigare tillstånd vid behov. Vanliga användningsområden inkluderar programvara, dokument och andra filer där ändringar följer en logik över tid.

Grunden består i att lagra varje ändring som en commit eller revisionspost i ett arkiv eller repository.

Det finns två huvudmodeller: centraliserad versionshantering där alla ändringar skickas till en central server (till exempel

Historik och användning: Git har blivit dominerande i modern mjukvaruutveckling sedan 2005 och används av plattformar

Fördelar innefattar spårbarhet, möjligheten att återställa tidigare tillstånd, stöd för samarbete och olika arbetsflöden som feature

Varje
commit
innehåller
metadata
såsom
tidpunkt,
författare
och
ett
meddelande
som
beskriver
ändringen.
Filer
lagras
i
en
historik,
och
skillnader
mellan
versioner
kan
visas
med
diff-verktyg.
Systemet
stödjer
även
grenar
(branches)
för
att
arbeta
parallellt
utan
att
påverka
huvudlinjen,
samt
merge-vyer
och
merge-konflikter
när
flera
bidragsgivare
ändrar
samma
del
av
koden
eller
dokumentet.
Subversion
eller
CVS
i
äldre
tider)
och
distribuerad
versionshantering
där
varje
klon
fungerar
som
en
fullständig
arkivkopia
(till
exempel
Git
och
Mercurial).
Distribuerade
system
underlättar
arbete
offline
och
kräver
ofta
mer
robust
konfliktlösning
vid
sammanslagning
av
grenar.
som
GitHub,
GitLab
och
Bitbucket.
Andra
exempel
är
Subversion,
Mercurial
och
Perforce,
vilka
används
i
olika
sammanhang,
särskilt
i
större
projekt
och
företag.
branches
och
pull
requests.
Utmaningar
inkluderar
inlärning
av
koncept,
konfliktlösning
vid
merges
och
ökat
lagringsbehov
i
stora
projekt.