26. Februar, 2017
Iako sam developer koji se još uvijek kali i koji ima još mnogo toga da nauči, GitHub je svakako jedna od veoma bitnih skilova koje sam naučio proteklih par dana i koja će završiti na moj popis skilova na LinkedIn mreži. Naime, radi se o možda najvećoj platformi koja omogučava razmjenu i održavanje vašeg softvera kroz jedan sasvim novi način pristupa softver developmentu. Za GitHub se kaže veoma često kako je to društvena mreža za programere, platforma za razvoj i održavanje softvera. Obadvoje je tačno. U ovom svom stručnom članku ću prenjeti vještine koje sam naučio pa stoga imate priliku da naučite sljedeće:
Prije nego krenemo sa poslom, ja ću ukratko objasniti šta je to zapravo GitHub? Za bolje razumijevanje GitHub-a, prvo morate znati šta je to Git? Git je zapravo open source version control system kojeg je razvio Linus Torvalds, kreator Linux-a. Upravo CVS (version control system) omogučava developerima širom svijeta da surađuju na određenom projektu i da konstantno budu u toku sa svim njegovim izmjenama.
Recimo, vi ste kreirali program sa listom stvari koje treba kupiti u šopingu i to ste postavili u svoj repozitorij na GitHub-u. Vaša se lista sastoji od četiri stavke i ubrzo vi saznate kako morate kupiti i petu stavku ali ona nije na listi. Vaš prijatelj klonira vašu listu na svoje računalo, doda petu stavku, ponovo vrati istu šoping listu natrag na GitHub.
Osvježite vaš repozitorij i saznate da vaša lista sada ima pet stavki. Pojednostavljeno bi ovako izgledao GitHub. Stim što je Git sličan konzoli ili Terminalu te uz kombinaciju Hub-a dobio je svoj web interfejs koji developerima omogučava upload, razmjenu i aktivnu suradnju na razvoju projekata. Tako je nastao GitHub.
Izgled GitHub-a
Obzirom da na internetu ima na gigabajte tutorijala o GitHub-u, njegovoj instalaciji na sve tri platforme, kako u tekstualnom pa tako i u video formatu, ja ću prenjeti svoja iskustva i zašto je meni kao developeru GitHub jako bitan.
2. Instalacija i konfiguracija GitHub-a na Ubuntu Linux-u?
Ovo je korak koji zahtjeva upotrebnu Terminala ili konzole. Nije mi jasno zašto se neki ljudi plaše crnog screen-a obzirom da postoje tri komande, uvrh glave, možda svega pet komandi s kojima ćete raditi prilikom upotrebe GitHub-a. Bez daljnjeg duženja, evo kako izvesti instalaciju GitHub-a na Ubuntu Linux?
Slika 1: Instalacija Git-a na Ubuntu Linux
Jedanput kada se ova komanda izvrši, tražit će vam se root lozinka kako bi se Git instalirao na vaš računar. Nakon instalacije Git-a, posjetite GitHub.com kako biste kreirali svoj Git nalog. Nakon što kreirate nalog na GitHub-u, na vašem Ubuntu terminalu trebate unjeti sljedeće dvije komande:
Slika 2: Konfiguracija GitHub-a
3. Kreiranje GitHub repozitorija
Ovo je dio koji se obavlja na GitHub platformi. Jedanput kada ste kreirali svoj GitHub nalog te obavili konfiguraciju na vašem Ubuntu-u ili koju već distru koristite, možete sada stvoriti svoj Git repozitorij. Repozitorij je online direktorijum u kojem se nalazi vaš projekat i koji prati svaku vašu izmjenu ili izmjenu vašeg projekta kojeg je izvela treća osoba koja učestvuje u razvoju programa itd. Evo kako se repozitorijum kreira.
Slika 3: Kreiranje novog GitHub repozitorija
Jedanput kada kliknete na >> New repository, otvorit će vam se prozor koji će od vas tražiti da imenujete vaš repozitorij, da uključite Readme datoteku i to je to.
Slika 4: Kreiranje GitHub repozitorija
Jednom kada imenujete vaš repozitorij, sve što treba da uradite jeste da odaberete zeleni taster Create repository, I vaš je direktorij spreman. Sada slijedi kloniranje repozitorija na vaše računalo, što se obavlja ovako:
Slika 5: Kloniranje GitHub repozitorija
Ja sam za potrebe ovog članka napisao mali C++ program po imenu Classes & Objects, pa možete naslutiti da se radi o jednom programu koji koristi Klase i Objekte. Isti taj projekat ću ja prenjeti u svoj GitHub repozitorij kako bi prikazao kako se prenose podaci na online repozitorijum na GitHub platformi. Jedanput kada kopirate ovaj link preko Terminala radite sljedeće:
Slika 6: Kloniranje GitHub repozitorija Classes-Objects
Prva naša komanda do sada u ovom članku jeste git clone kojom se klonira repozitorijum.
4. Prenos projekta s računala na vaš GitHub repozitorij?
Došli smo do glavnog dijela našeg članka a to je prenos podataka (u daljem tekstu: projekta) na GitHub repozitorij. Druga komanda koju ćete jako često koristiti jeste git status koja će vam dati informacije o vašem repozitoriju te o izmjenama koje su dodate.
Slika 7: Provjera trenutno stanja GitHub repozitorija upotrebom git status komande
Kao što vidite, trenutno se u mom Classes-Objects direktorijumu nalazi samo datoteka README.md. Ponovnim pokretanjem git status komande, moj direktorij sada ima ove podatke koji su spremni za prijenos u moj Classes-Objects direktorijum.
Slika 8: Trenutno stanje mog Classes-Objects direktorijuma sa podacima za prijenos na GitHub
Dakle, sada se u mom direktorijumu nalazi pet datoteka koje treba prenjeti na GitHub repozitorijum. Moj online repozitorijum i dalje izgleda ovako:
Slika 9: Trenutno stanje online GitHub repozitorija Classes-Objects
Sada ove datoteke treba pripremiti za prijenost na GitHub što radimo našom trećom komandom
git
commit -m ‘message’ kojom obavještavamo naš GitHub da prenosimo ove datoteke:
Slika 10: Prijenos datoteka na GitHub repozitorij upotrebom komande git add -A | git commit -m "vaša poruka ovdje"
Zaboravio sam dodati da prije nego pokrenete ovu komandu git commit -m "", treba prvo da izvršite ovu komandu git add -A koja će dodati sve datoteke u sam direktorijum pa tek onda izvršite ovu komandu git commit -m "". Nakon ove komande, trenutno stanje direktorijuma izgleda kao na slici. Eh sada, preostalo nam je samo da prenesemo konačno ove podatke na naš repozitorij a to radimo našom petom komandom po imenu git push.
Slika 11: Prenos datoteka na GitHub repozitorijum upotrebom komande git push
Slika 12: Uspješno preneseni podaci na GitHub repozitorijum
Jedanput kada se osvježi stranica, moj repozitorij izgleda ovako. Dakle, uspješno sam prenjeo sve datoteke na svoj GitHub repozitorij po imenu Classes-Objects. Ponovnim pokretanjem Terminal komande git status dobit ćete ove informacije o trenutnom stanju ovog repozitorija.
Slika 13: Ažuriran GitHub repozitorijum Classes-Objects
Zaključak:
U cijelom ovom članku imali smo priliku da se upoznamo šta je to GitHub, kako izvesti njegovu instalaciju i konfiguraciju na Ubuntu Linux platformi te kako stvoriti aktivni GitHub repozitorijum. U osnovi, koristimo ovih pet komandi za održavanje i stvaranje GitHub repozitorijuma a to su:
-> git clone - omogučava kloniranje GitHub repozitorija
-> git status - prikazuje aktuelno stanje vašeg repozitorija
-> git add -A - prenosi sve podatke na GitHub repozitorij
-> git commit -m "message" - zaključava sve podatke u GitHub repozitorijum za prijenos
-> git push - prenosi sve podatke na GitHub repozitorij
Ovih pet komandi ćete i vi veoma često koristiti prilikom stvaranja i održavanja vašeg projekta na GitHub platormi. Bilo da se radi o najosnovnijem programu, web stranici ili čak i dokumentu, GitHub je prvi izbor da objavljivanje vašeg projekta. S druge strane, sve velike firme već odavno upotrebljavalju GitHub zbog toga što je moguće privući velik broj programera koji su spremni da pomognu razvoj vašeg projekta gdje ćete uvijek biti u mogučnosti isporučiti noviju verziju vašeg programa na vrijeme.
Poveznice:
Projekat Classes-Objects:
https://github.com/amartufo/Classes-Objects.git
Sada znate kako klonirati ovaj repozitorij na vaše računalo pa vi možda dodate nešto što ja nisam znao. U svakom slučaju ja ću znati, jer imam git status.
Do narednog čitanja.