Week-1: Git - Sistem za verzionisanje koda
Git je alat koji je razvio Linus Torvalds kako bi olaksao vodjenje jednog velikog i kompleksnog projekta – Linux kernela. Git je de-facto postao standardni alat za verzionisanje koda.
Git - Osnovni pojmovi
Init – Inicijalizacija Git repozitorijuma. Inicijalizacija se obavlja komandom
git init
u direktorijumu u kojem se nalazi projekat.Repozitoriji – Git repozitorijum je mesto gde se nalaze sve verzije projekta.
Remote – Remote je udaljeni/remote repozitorijum (npr. onaj koji ste kreirali na git serveru, GitHub-u etc.).
Local – Local je lokalni repozitorijum (incijaliziran na vasem lokalnom racunaru).
Add – Add je proces dodavanja fajlova u staging area. Fajlovi se dodaju komandom
git add
iligit add .
(dodaje sve fajlove u trenutnom direktorijumu).Staging Area – Staging area je mesto gde se nalaze fajlovi koji ce biti dodati u commit.
Commit – Commit je verzija projekta. Commit se sastoji od snapshot-a projekta i metapodataka koji opisuju commit.
Push – Push je proces slanja izmjena koda iz lokalnog repozitorijuma na udaljeni/remote repozitorijum (npr. na GitHub).
Branch – Branch je nezavisna linija/grana razvoja projekta. Branch se koristi da bi se razvijale nove funkcionalnosti neovisno od glavne
main
grane, Branch/Grana se moze spojiti sa drugom granom/branch-om.Pull – Pull je proces preuzimanja izmjena koda iz udaljenog/remote repozitorijuma na lokalni repozitoriji (onaj na vasem racunaru).
Merge – Merge je proces spajanja dve grane/branch-a u jednu granu/branch.
Pull Request – Pull request je zahtjev za spajanje izmjena iz jedne grane/branch-a u drugu granu/branch.
Fork – Fork je kopija projekta. Fork se koristi da bi se napravila kopija postojeceg projekta i nastavio rad na njemu bez uticaja na originalni projekat. Fork se moze spojiti sa originalnim projektom koristeci Pull Request.

Osnovne Git Naredbe
$ git init #inicijalizacija git repozitorijuma
$ git status #prikaz statusa repozitorijuma
$ git add file-name #dodavanje fajla u staging area
$ git add . #dodavanje svih fajlova iz radnog direktorija ova u staging area
$ git commit -m"commit message" #kreiranje commit-a
$ git push #slanje izmjena na udaljeni/remote repozitorijum
$ git pull #preuzimanje izmjena sa udaljenog/remote repozitorijuma
$ git log #prikaz loga commit-ova
$ git log --oneline #prikaz loga commit-ova u jednoj liniji
$ git log --oneline --graph #prikaz loga commit-ova u jednoj liniji sa
#grafickim prikazom
$ git clone repo-url #kloniranje projekta sa udaljenog/remote repozitorijuma
$ git remote -v #prikaz povezanih udaljenih/remote repozitorijuma
$ git branch #prikaz trenutne grane/branch-a unutar kojeg se nalazite
$ git branch branch-name #kreiranje nove grane/branch-a od trenutne
#grane/branch-a na kojem se nalazite,
#necete biti automatski prebaceni na novu granu/branch
$ git merge branch-name #spajanje grane/branch-a sa trenutnom granom/branch-om
$ git checkout branch-name #prebacivanje na drugu granu/branch
$ git remote add origin repo-url #povezivanje lokalnog repozitorijuma sa
#udaljenim/remote repozitorijumom
$ git config --global user.name "username" #podesavanje korisnickog imena --global
#znaci da ce ove postavke biti
#primjenjene na svaki repozitorijum na
#vasem racunaru
Git Cheat Sheet

Snimci predavanja
DevOps Mentorship Program - Week 1 - Git & GitHub (#tier-1-group-1)
DevOps Mentorship Program - Week 1 - Git & GitHub (#tier-1-group-2)
Materijali za ucenje
Korisni alati
Zadatak
Kreirajte javni GitHub repozitoriji unutar svog GitHub racuna i nazovite ga: ime-prezime-devops-mentorship
. Kreirajte .gitignore
i README.md
fajlove. Nakon sto ste kreirali fajlove na vasem lokalnom racunaru postavite ih na GitHub repozitoriji koji ste ranije kreirali. Vas repozitoriji bi trebao da ima dvije grane main i development gdje cete sve izmjene na main
granu dodavati praveci Pull Request sa development
grane odnosno branch-a.
Dodatni materijali
Knjige
Video materijali
Blog Postovi
Last updated
Was this helpful?