Hva er Git?
I dag er de fleste programvareutviklingsprosjekter samarbeid. Disse prosjektene kan ha hundrevis eller tusenvis av mennesker som jobber med dem. Å holde oversikt over endringer er en nødvendighet for et jevnere samarbeid. Git er et åpen kildekode-distribuert versjonskontrollsystem som holder oversikt over programvareelementer og hjelper til med å kjøre mer effektive utviklingsprosesser.
Hva er et versjonskontrollsystem?
Når utviklere jobber med en programvare, må de holde rede på endringene. Et versjonskontrollsystem (VCS) husker versjonene av programvaren når den beveger seg gjennom de forskjellige utviklingsstadiene. Arbeid med et versjonskontrollsystem har følgende fordeler:
- Langsiktig historie: Versjonskontrollsystemer opprettholder historien om hvem, hva og når det er endret programvarekoden. Denne historikken er en verdifull ressurs for å finne eventuelle feil med programvaren. Hvis det er noen problemer med den nye koden, kan du alltid gå tilbake til de eldre versjonene.
- Forgrening og sammenslåing: De fleste versjonskontroller har muligheter for forgrening og sammenslåing. Så utviklingsteam kan dele arbeidet i flere strømmer og jobbe samtidig med ulike aspekter av prosjektet.
- Sporbarhet: Versjonskontroll gir utviklere en måte å enkelt og pålitelig spore feil og problemer i en programvare. Det reduserer forvirring. Det skaper et effektivt og gjennomsiktig samarbeidsmiljø.
Git - Den distribuerte versjonskontrollen
Opprinnelig var de fleste versjonskontrollsystemene sentraliserte. I den sentraliserte modellen vil informasjon om versjonskontroll som forfatterskap, dato, klokkeslett og modifikasjonsinformasjon opprettholdes i en sentralisert server eller database. Problemet med denne modellen var at utviklingsteamene ville være begrenset av kraften eller trafikken til den sentrale serveren. Når den sentrale serveren gikk ned, ville hele systemet stå stille.
I et distribuert versjonskontrollsystem (DVCS) opprettholdes versjonsinformasjonen med hver kopi av koden. Det tillater peer-to-peer-deling. Det er ikke behov for et sentralisert lager (selv om det er mulig å sette opp et).
Kort historie om Git
Git startet i litt kontrovers som en hevnaksjon. I 2002 begynte Linux-fellesskapet å bruke det proprietære distribuerte versjonskontrollsystemet BitKeeper gratis. Men i 2005 brøt forholdet mellom Linux-fellesskapet og BitKeeper sammen da status for fri bruk ble opphevet. Så Linus Torvalds, skaperen av Linux, begynte å utvikle Git som et open source-produkt. Det året ble den første versjonen av Git utgitt. I dag er Git det mest populære versjonskontrollsystemet.
Fordeler og ulemper med Git
Git er et enkelt og kraftig distribuert versjonskontrollsystem med følgende fordeler og ulemper:
Fordeler
Opptreden: De fleste utviklingsteam flytter til Git for ytelsesfordelene. Forpliktelser, forgrening og sammenslåing er raskere i Git enn sentraliserte versjonskontrollsystemer som CVS, SVN eller Perforce. Programvarens distribuerte natur gjør det også lettere for utviklere å dele arbeid peer-to-peer. Denne prosessen er raskere enn å få koden fra en sentral server.
Sikkerhet: Integriteten til koden er lettere å verifisere på Git. Den bruker SHA1 kryptografisk sikker hashing. Hashene er unike for hver modifikasjon. Hvis noen endrer en modifikasjon, vil hasjene ikke stemme overens. Denne egenskapen til Git gjør det vanskeligere for alle å snike seg inn i kodeforandringer skjult.
Fleksibilitet: Git ble designet for å tilpasse seg hvilken som helst arbeidsflyt. Eldre versjonskontrollsystemer er mer restriktive. Men Git gir teamet ditt mer spillerom. Du kan til og med lage en sentralisert arbeidsflyt eller integrere med andre versjonskontrollsystemer for å få eldre systemer til å fungere.
Ulemper
Vanskeligere å lære: Git-konsepter er ikke alltid intuitive. Andre versjonskontrollsystemer bruker en mer brukergrensesnittbasert tilnærming. Git-fellesskap pleier å foretrekke kommandolinjen. Så det er mer utfordrende for ikke-tekniske brukere å lære.
Nostalgi for sentralisert versjonskontroll: Bedrifter er noen ganger nølende med å bruke Git fordi det ikke er noen sentralisert kontroll. Men hvis du trenger et sentralisert lager, kan du alltid utforme en arbeidsflyt for å implementere det.
Konklusjon
Git har økt i popularitet på grunn av verdien den tilfører ethvert utviklingsteam. Selv om du jobber alene med et prosjekt, kan det være mye tid å ha en pålitelig historie. Git er et gratis og nyttig verktøy for ethvert programvareutviklingsprosjekt.
Videre studier:
Git Nettsted
Git Basics
GitHub - Git Hosting Site
BitBucket - Git Hosting Site
Referanser:
- https: // www.atlassian.com / git / tutorials / what-is-version-control
- https: // www.atlassian.com / git / tutorials / what-is-git
- https: // git-scm.com / book / no / v2 / Komme i gang-A-Short-History-of-Git
- https: // git-scm.com / book / no / v2 / Komme i gang-Git-Basics
- https: // github.com /