Git on vaba hajutatud versioonihaldustarkvara, mille lõi algselt Linus Torvalds Linuxi tuuma arendamiseks. Kuigi Git on enamjaolt serveripõhine, saab seda kasutada ka ilma võrguta arvutis kohalikuks versioonihalduseks. Praegu haldab Giti arengut Junio Harmano.[3]

Git
Git-logo.svg
Autor Linus Torvalds
Arendaja Junio Hamano, Linus Torvalds
Esmaväljalase 21. detsember 2005[1]
Viimane väljalase 2.29.0 / 19. oktoober 2020 Muuda Vikiandmetes
Kirjutatud keeles C, Bourne Shell, Perl[2]
Platvorm Unix
Suunitlus versioonihaldus
Litsents GNU GPL
Veebisait git-scm.com

Git toimib läbi selle, et jaotab versioonid ühe kausta sisse, mida tuntakse ka repositooriumina (ingl k repository). Iga selline kaust omab täielikku andmeid oma ajaloost ja versioonihaldusvõimalust.[4]

AjaluguRedigeeri

Giti arendust alustas soomlasest tarkvaraarendaja Linus Torvalds 3. aprillil 2005[5], et lihtsustada koostööd Linuxi arendamisel.[6] Git on alates 7. aprillist 2005 serverivormis iseseisvalt üleval ning 16. aprillil 2005 tehti esimene muudatus, millele eelnenud seisu oli võimalik tarkvara abil taastada.[5]

Alates 26. juulist 2005 on Giti peamine haldaja ja ülalpidaja Junio Harmano, kes avalikustas ka Git 1.0.0 versiooni.[1][3]

DisainRedigeeri

Kuigi Giti disain on inspireeritud teistest versioonihaldustarkvaradest, ei olnud varasemad sellised tarkvarad sobilikud Linus Torvaldsi jaoks ning ta valmistas võrdlemisi omanäolise tarkvara.[7]

Gitil on palju omadusi, mis teevad selle kasulikuks mitmetele arvuti kasutajatele. Põhjused, miks paljud arvuti kasutajad kasutavad just Giti, võivad olla järgmised:

  • see võimaldab ühtset pilvepõhist asukohta, kus hoida oma koodi;
  • ühest projektist on võimalik teha harusid ning neid hiljem liita või kustutada;
  • meeskonnatöö projekti kallal võimaldab igaühel muuta korraga projektis erinevaid faile;
  • olles avatud lähtekoodiga, peetakse seda töökindlaks tarkvaraks;[8][9]
  • versioonihaldus annab võimaluse näha, kuidas projekt on arenenud;
  • kuna mitmed veebipõhised Giti keskkonnad võimaldavad avalikke projekte, saab oma oskusi näidata.[10][11]

Giti kasutamineRedigeeri

Kuigi Gitti on arendatud peamiselt Linuxil, on see saadaval ka teistele operatiivsüsteemidele nagu Windows ja mac OS X.[12]

On olemas ka erinevad Giti teostused, mis toimivad mõnel kindlal programmeerimiskeelel. Näiteks JGit on Java teek, go-git on Go keelel põhinev Giti versioon, Dulwich põhineb Pythonil ning JS-Git on JavaScriptil põhinev Giti alamklassi teostus.[13][14][15][16] Giti olemasolu erinevatel platvormidel ning õpetuste olemasolu veebis teeb Giti kasutamise ja Giti õppimise lihtsaks kõigile, kes on huvitatud. Sama lihtsalt saab süsteemi olemasolul valmis teha ka enda Giti serveri, Linux operatiivsüsteemil saab seda teha tunni jooksul.[17]

Giti kasutavad sellised suured ettevõtted ja projektid nagu Google, Facebook, Microsoft, Twitter, Linkedin, Netflix, Perl5, Android, Linux, Eclipse.[18]

Gitil toimiv suurim teenus on GitHub, kus on enam kui 33 miljonit kasutajat.[19]

Git riistvaraliseltRedigeeri

Nõuded Giti kasutamiseksRedigeeri

Nõuded Giti serveri kasutamiseks võivad erineda olenevalt näiteks eelistatud meediavormingust ja internetiühenduse kiirusest. Kui on soovi reaalajas ümber kodeerida faile, on nõuded suuremad. [20]

MiinimumnõudedRedigeeri

  • Intel Core 2 Duo protsessor 1,6 GHz või parem;
  • Windows operatiivsüsteemi puhul vähemalt 1 Gb RAM;
  • Linux operatiivsüsteemi puhul vähemalt 512 Mb RAM;
  • Operatiivsüsteemilt:
    • Windows Vista või uuem,
    • OS X puhul Snow Leopard 10.6.3 või uuem,
    • Linux puhul Ubuntu, Debian, Fedora, CentOS või SuSE;
  • Et kasutada internetipõhist Giti peab olema internetiühendus. [20]

Soovitatud seadistusRedigeeri

  • Intel Core 2 Duo protsessor 2,4 GHz või parem;
  • 2 Gb RAM;
  • Operatiivsüsteemilt:
    • Windows Vista või uuem,
    • OS X-i puhul Snow Leopard 10.6.3 või uuem,
    • Linuxi puhul Ubuntu, Debian, Fedora, CentOS või SuSE;
  • Et kasutada internetipõhist Giti, peab olema internetiühendus.[20]

Vaja läheb kindlasti ka andmekandjat. Erinevatel Giti serveritel võivad olla erinevad nõuded.

Kuidas parem riistvara teeb Giti kasutamise paremaksRedigeeri

Soovitatuim operatiivsüsteem Giti kasutamiseks on Linux, seal on seda kõige rohkem optimeeritud ja arendatud. Siiski, rohkem tähtis on riistvara valik. Giti puhul on tähtsamad CPU, muutmälu ja andmekandja.[21]

CPU ehk protsessori tähtsusRedigeeri

Tähtsaim on CPU puhul tuumade arv, see võimaldab serveri kasutajate arvu suurendada. Väiksemate projektide jaoks on soovitatud kas 2 või enam tuumaga protsessor, sest see toetab kuni 500 kasutajat ning taustal olevad tööd saavad ka süsteemi suurema aeglustamiseta tehtud. Suured Giti serverid kasutavad palju enamate tuumadega protsessoreid, kui kõik toimub ühe masina peal. Näiteks, 64-tuumaline protsessor toetab kuni 40 000 kasutajat.[21]

Andmekandja tähtsusRedigeeri

Vajalik andmekandjate kogumaht oleneb peamiselt sellest, kui suurt mahtu kõik serveris olevad repositooriumid kokku võtavad. Arvestama aga peab, et üldjuhul on Gitis arendatavad projektid ning need aina suurenevad. Kui väikese kasutajahulgaga serveris on piisavalt mälu ning piisav protsessor, siis suurte projektide puhul jääb peamiseks pudelikaelaks andmekandjate otsinguajad. Kiire kõvaketta või SSD (pooljuhtketta) olemasolu kiirendab tööd märgatavalt. [21]

Muutmälu tähtsusRedigeeri

Muutmälu tähtsust saab vaadata kahest nurgast, selle kiirusest ja selle mahust. Eelistatud on loomulikult suured ja kiired mälumoodulid. Kiirus aitab kaasa eriti väikeste projektide puhul, serverisse laadimine ja alla laadimine oleks justkui kohesed, kui repositooriumi maht ei ületa mälumahtu. Sellest tuleb ka välja, et mälu suurus on tähtis. Muutmälu suuruse tähtsusele lisab juurde veel ka see, et enamjaolt kasutavad Giti servereid mitmed kasutajad, mitte vaid üksikkasutaja. [21]

ViitedRedigeeri

VälislingidRedigeeri