Što je GitHub i za što se koristi?

GitHub je web stranica i usluga za koje cijelo vrijeme čujemo kako geekovi buncaju, no mnogi ljudi zapravo ne razumiju što radi. Želite li znati o čemu se radi na GitHub hubbubu? Pročitajte kako biste saznali.

"Git" u GitHubu

POVEZANO: Praćenje verzija s subverzijom (SVN) za početnike

Da biste razumjeli GitHub, prvo morate razumjeti Git. Git je sustav kontrole verzija s otvorenim kodom koji je pokrenuo Linus Torvalds - ista osoba koja je stvorila Linux. Git je sličan drugim sustavima za kontrolu verzija - Subverzija, CVS i Mercurial da nabrojimo samo neke.

Dakle, Git je sustav za kontrolu verzija, ali što to znači? Kad programeri nešto stvore (na primjer, aplikaciju), oni neprestano mijenjaju kôd, izdajući nove verzije do i nakon prvog službenog (ne-beta) izdanja.

Sustavi za kontrolu inačica drže ove revizije ravno, spremajući izmjene u središnje spremište. To omogućuje programerima jednostavnu suradnju jer mogu preuzeti novu verziju softvera, unijeti promjene i prenijeti najnoviju reviziju. Svaki programer može vidjeti nove promjene, preuzeti ih i doprinijeti.

Slično tome, ljudi koji nemaju nikakve veze s razvojem projekta i dalje mogu preuzeti datoteke i koristiti ih. Većina korisnika Linuxa trebala bi biti upoznata s tim postupkom, jer je korištenje Git-a, Subverzije ili neke druge slične metode prilično uobičajeno za preuzimanje potrebnih datoteka - posebno u pripremi za sastavljanje programa iz izvornog koda (prilično uobičajena praksa za Linux geekove).

Git je preferirani sustav kontrole verzije većine programera, jer ima višestruke prednosti u odnosu na ostale dostupne sustave. Učinkovitije pohranjuje promjene datoteka i osigurava bolji integritet datoteka. Ako vas zanimaju detalji, na stranici Git Basics nalazi se temeljito objašnjenje kako Git radi.

"Hub" u GitHubu

Ustanovili smo da je Git sustav za upravljanje verzijama, sličan, ali bolji od mnogih dostupnih alternativa. Pa, što GitHub čini tako posebnim? Git je alat naredbenog retka, ali središte oko kojeg se okreću sve stvari koje uključuju Git je središte - GitHub.com - gdje programeri pohranjuju svoje projekte i umrežavaju se s istomišljenicima.

Pređimo na nekoliko glavnih razloga zbog kojih geekovi vole koristiti GitHub i usput naučimo neku terminologiju.

Spremište

Spremište (obično skraćeno "repo") je mjesto na kojem su pohranjene sve datoteke za određeni projekt. Svaki projekt ima svoj vlastiti repo, a možete mu pristupiti s jedinstvenim URL-om.

Forking Repo

"Forking" je kada stvorite novi projekt temeljen na drugom projektu koji već postoji. Ovo je nevjerojatna značajka koja uvelike potiče daljnji razvoj programa i drugih projekata. Ako na GitHubu pronađete projekt kojem biste željeli doprinijeti, možete rastaviti repo, uvesti željene promjene i objaviti revidirani projekt kao novi repo. Ako se originalno spremište koje ste račvali za stvaranje novog projekta ažurira, lako možete dodati ta ažuriranja na svoju trenutnu račvu.

Zahtjevi za povlačenje

Forkirali ste spremište, napravili veliku reviziju projekta i želite da ga prepoznaju izvorni programeri - možda čak i uključen u službeni projekt / spremište. To možete učiniti stvaranjem zahtjeva za povlačenjem. Autori izvornog spremišta mogu vidjeti vaše djelo, a zatim odabrati hoće li ga prihvatiti u službeni projekt ili ne. Kad god izdate zahtjev za povlačenjem, GitHub pruža savršen medij za komunikaciju između vas i održavatelja glavnog projekta.

Društvene mreže

Aspekt društvenog umrežavanja GitHub-a vjerojatno je njegova najsnažnija značajka, omogućavajući da projekti rastu više od bilo koje druge ponuđene značajke. Svaki korisnik na GitHubu ima svoj profil koji se ponaša poput svojevrsnog životopisa, prikazujući vaš prošli rad i doprinose drugim projektima putem zahtjeva za povlačenjem.

O revizijama projekata može se raspravljati javno, tako da masa stručnjaka može doprinijeti znanjem i surađivati ​​kako bi se projekt unaprijedio. Prije pojave GitHub-a, programeri zainteresirani za doprinos projektu obično bi trebali pronaći način kontaktiranja autora - vjerojatno e-poštom - i onda ih uvjeriti da im se može vjerovati i da je njihov doprinos legitiman.

Dnevnici promjena

Kada više ljudi surađuje na projektu, teško je pratiti revizije - tko je što, kada i gdje promijenio te datoteke. GitHub se brine za ovaj problem prateći sve promjene koje su gurnute u spremište.

GitHub nije samo za programere

Svi ovi razgovori o tome kako je GitHub idealan za programere možda vjeruju da će oni jedini smatrati korisnim. Iako je puno rjeđi, GitHub zapravo možete koristiti za bilo koju vrstu datoteka. Ako, na primjer, imate tim koji neprestano vrši izmjene u word dokumentu, mogli biste koristiti GitHub kao svoj sustav kontrole verzija. Ova praksa nije uobičajena, jer u većini slučajeva postoje bolje alternative, ali to treba imati na umu.

Jeste li spremni započeti s radom sada kada znate o čemu se radi u GitHubu? Idite na GitHub.com i provjerite njihove stranice pomoći nakon prijave.