Git

Što je Git?

Što je Git?

Što je Git?

Danas su većina projekata razvoja softvera zajednički napori. Na tim projektima može raditi stotine ili tisuće ljudi. Stoga je praćenje promjena nužnost za uglađeniju suradnju. Git je distribuirani sustav kontrole verzija s otvorenim kodom koji prati softverska sredstva i pomaže u izvođenju učinkovitijih razvojnih procesa.

Što je sustav za kontrolu verzija?

Kada programeri rade na softveru, moraju pratiti svoje promjene. Sustav za upravljanje verzijama (VCS) pamti verzije softvera dok se kreće kroz različite faze razvoja. Rad sa sustavom za kontrolu verzija ima sljedeće prednosti:

Git - Distribuirana kontrola verzija

U početku je većina sustava za upravljanje verzijama bila centralizirana. U centraliziranom modelu informacije o kontroli verzije poput autorstva, datuma, vremena i informacije o izmjenama održavale bi se na centraliziranom poslužitelju ili bazi podataka. Problem ovog modela bio je taj što će razvojni timovi biti ograničeni snagom ili prometom središnjeg poslužitelja. Kad bi središnji poslužitelj propao, cijeli bi sustav stajao.

U distribuiranom sustavu za upravljanje verzijama (DVCS) podaci o verziji održavaju se uz svaku kopiju koda. Omogućuje peer-to-peer dijeljenje. Nema potrebe za centraliziranim spremištem (iako ga je moguće postaviti).


Kratka povijest Gita

Git je započeo u malo prijepora kao čin osvete. 2002. godine Linux zajednica počela je besplatno koristiti vlasnički distribuirani sustav kontrole verzija BitKeeper. No, 2005. odnos između Linux zajednice i BitKeeper-a pukao je kad je opozvan status besplatne upotrebe. Tako je Linus Torvalds, tvorac Linuxa, počeo razvijati Git kao proizvod otvorenog koda. Te je godine objavljena prva verzija Gita. Danas je Git najpopularniji sustav kontrole verzija.

Prednosti i nedostaci Gita

Git je jednostavan i moćan distribuirani sustav kontrole verzija sa sljedećim prednostima i nedostacima:

Pros

Izvođenje: Većina razvojnih timova prelazi u Git radi poboljšanja performansi. Uključivanje, grananje i spajanje brže je u Gitu od centraliziranih sustava za kontrolu verzija poput CVS-a, SVN-a ili Perforcea. Također, distribuirana priroda softvera olakšava programerima dijeljenje posla peer-to-peer. Ovaj je postupak brži od dobivanja koda sa središnjeg poslužitelja.

Sigurnost: Integritet koda lakše je provjeriti na Gitu. Koristi SHA1 kriptografski sigurno raspršivanje. Hash-ovi su jedinstveni za svaku modifikaciju. Ako netko promijeni modifikaciju, hashi se neće podudarati. Ovo svojstvo Gita otežava bilo kome da se potajno uvuče u promjene koda.

Fleksibilnost: Git je dizajniran da se prilagodi bilo kojem tijeku rada. Sustavi za kontrolu starijih verzija restriktivniji su. Ali Git daje vašem timu više slobodnog prostora. Možete čak stvoriti centralizirani tijek rada ili se integrirati s drugim sustavima za kontrolu verzija kako bi vaši naslijeđeni sustavi radili.

Protiv

Teže naučiti: Git koncepti nisu uvijek intuitivni. Ostali sustavi za kontrolu inačica imaju pristup koji se temelji više na korisničkom sučelju. Git zajednica preferira naredbenu liniju. Stoga je izazov za netehničke korisnike naučiti.

Nostalgija za centraliziranom kontrolom verzija: Tvrtke se ponekad kolebaju oko korištenja Gita jer nema centralizirane kontrole. Ali ako vam treba centralizirano spremište, uvijek možete dizajnirati tijek rada kako biste ga implementirali.


Zaključak

Git je porastao na popularnosti zbog vrijednosti koju dodaje bilo kojem razvojnom timu. Čak i ako sami radite na projektu, pouzdana povijest može vam uštedjeti puno vremena. Git je besplatan i koristan alat za bilo koji projekt razvoja softvera.

Daljni studiji:

Web stranica Git
Osnove Gita
GitHub - web mjesto za hosting Git-a
BitBucket - web mjesto za hosting Git-a

Reference:

Zamijenite svoje tipke miša različito za različiti softver pomoću X-Mouse Button Control
Možda vam treba alat koji bi mogao promijeniti kontrolu miša sa svakom aplikacijom koju koristite. Ako je to slučaj, možete isprobati aplikaciju pod n...
Microsoft Sculpt Touch bežični miš pregled
Nedavno sam čitao o Microsoft Sculpt Touch bežični miš i odlučio ga kupiti. Nakon što sam ga neko vrijeme koristio, odlučio sam s njim podijeliti svoj...
Trackpad i pokazivač miša na ekranu AppyMouse za Windows tablete
Korisnicima tableta često nedostaje pokazivač miša, posebno kada su navični koristiti prijenosna računala. Pametni telefoni i tableti osjetljivi na do...