Hvad er Git?
I dag er de fleste softwareudviklingsprojekter samarbejde. Disse projekter kan have hundreder eller tusinder af mennesker, der arbejder på dem. Så det at holde styr på ændringer er en nødvendighed for et jævnere samarbejde. Git er et open source-distribueret versionskontrolsystem, der holder styr på softwareaktiver og hjælper med at køre mere effektive udviklingsprocesser.
Hvad er et versionskontrolsystem?
Når udviklere arbejder på en software, skal de holde styr på deres ændringer. Et versionskontrolsystem (VCS) husker versionerne af softwaren, når den bevæger sig gennem de forskellige udviklingsstadier. Arbejde med et versionskontrolsystem har følgende fordele:
- Langsigtet historie: Versionskontrolsystemer opretholder historien om, hvem, hvad og hvornår af eventuelle ændringer af softwarekoden. Denne historie er en værdifuld ressource til at finde enhver fejl i softwaren. Hvis der er problemer med den nye kode, kan du altid gå tilbage til de ældre versioner.
- Forgrening og fletning: De fleste versionskontroller har forgrenings- og fletningsfunktioner. Så udviklingsteams kan opdele arbejdet i flere streams og arbejde samtidigt på forskellige aspekter af projektet.
- Sporbarhed: Versionskontrol giver udviklere en måde til nemt og pålideligt at spore fejl og problemer i en software. Det mindsker forvirring. Det skaber et effektivt og gennemsigtigt samarbejdsmiljø.
Git - Den distribuerede versionskontrol
Oprindeligt blev de fleste versionskontrolsystemer centraliseret. I den centraliserede model vil versionskontroloplysningerne som forfatterskab, dato, klokkeslæt og modifikationsoplysninger opretholdes i en centraliseret server eller database. Problemet med denne model var, at udviklingsholdene ville blive begrænset af magten eller trafikken fra den centrale server. Når den centrale server gik ned, ville hele systemet stå stille.
I et distribueret versionskontrolsystem (DVCS) vedligeholdes versionsoplysningerne med hver kopi af koden. Det tillader peer-to-peer-deling. Der er ikke behov for et centraliseret lager (selvom det er muligt at oprette et).
Kort historie med Git
Git startede i en smule kontrovers som en hævnhandling. I 2002 begyndte Linux-samfundet at bruge det proprietære distribuerede versionskontrolsystem BitKeeper gratis. Men i 2005 brød forholdet mellem Linux-samfundet og BitKeeper sammen, da status for fri brug blev tilbagekaldt. Så Linus Torvalds, skaberen af Linux, begyndte at udvikle Git som et open source-produkt. Det år blev den første version af Git udgivet. I dag er Git det mest populære versionskontrolsystem.
Fordele og ulemper ved Git
Git er et simpelt og kraftfuldt distribueret versionskontrolsystem med følgende fordele og ulemper:
Fordele
Ydeevne: De fleste udviklingsteam flytter til Git for at opnå præstationsfordelene. Forpligtelser, forgrening og fletning er hurtigere i Git end centraliserede versionskontrolsystemer som CVS, SVN eller Perforce. Den distribuerede karakter af softwaren gør det også lettere for udviklere at dele arbejde peer-to-peer. Denne proces er hurtigere end at hente koden fra en central server.
Sikkerhed: Kodens integritet er lettere at verificere på Git. Det bruger SHA1 kryptografisk sikker hashing. Hashene er unikke for hver ændring. Hvis nogen ændrer en ændring, stemmer hashene ikke overens. Denne egenskab ved Git gør det sværere for nogen at snige sig ind i kodeforandringer skjult.
Fleksibilitet: Git blev designet til at tilpasse sig enhver arbejdsgang. Ældre versionskontrolsystemer er mere restriktive. Men Git giver dit team mere spillerum. Du kan endda oprette en central arbejdsgang eller integrere med andre versionskontrolsystemer for at få dine ældre systemer til at fungere.
Ulemper
Sværere at lære: Git-koncepter er ikke altid intuitive. Andre versionskontrolsystemer tager en mere brugergrænseflade-baseret tilgang. Git-samfund har en tendens til at foretrække kommandolinjen. Så det er mere udfordrende for ikke-tekniske brugere at lære.
Nostalgi efter centraliseret versionskontrol: Virksomheder tøver undertiden med at bruge Git, fordi der ikke er nogen centraliseret kontrol. Men hvis du har brug for et centralt lager, kan du altid designe en arbejdsgang til at implementere det.
Konklusion
Git er steget i popularitet på grund af den værdi, det tilføjer ethvert udviklingsteam. Selvom du arbejder alene på et projekt, kan det spare dig meget tid at have en pålidelig historie. Git er et gratis og nyttigt værktøj til ethvert softwareudviklingsprojekt.
Yderligere studier:
Git-websted
Git Basics
GitHub - Git Hosting-websted
BitBucket - Git Hosting-websted
Referencer:
- https: // www.atlassisk.com / git / tutorials / hvad-er-version-kontrol
- https: // www.atlassisk.com / git / tutorials / hvad-er-git
- https: // git-scm.com / book / da / v2 / Kom godt i gang-A-Short-History-of-Git
- https: // git-scm.com / book / da / v2 / Kom godt i gang-Git-Basics
- https: // github.com /