Pogledali bomo osnovni potek dela v Git za enega uporabnika, ki želi imeti dostop do preteklih verzij dokumentov (predvsem mišljena koda računalniških programov). Z Git bomo delali bomo s pomočjo grafičnega vmesnika SourceTree. Na koncu bomo izdelek “objavili” na GitHub.
Predpogoji za delo:
Git je sistem za spremljanje zgodovine verzij datotek (ang. version control system ali VCS, tudi revision control system ali RVS), ki hrani vse pretekle verzije datotek, ki smo jih v neki točki izrecno “shranili” s pomočjo posebnega ukaza “commit”. Vsa zgodovina je shranjena v (skriti) mapi imenovani “.git”. Na disku je vedno vidna samo ena verzija datoteke - tista na kateri trenutno delamo. Do različnih verzij pridemo lahko s posebnimi ukazi, ki restavrirajo želeno verzijo v aktivno mapo.
Ni nujno, da so vse datoteke v mapi pod kontrolo Git - moramo jih eksplicitno dodati. Dodane datoteke potem Git spremlja. Preden jih “commitamo”, jih moramo najprej dodati v “staging area”, kjer čakajo na naš “commit”. Konkreten potek bo viden tekom dela.
Git ima še mnogo možnosti, ki jih ne bomo obravnali. Večinoma pridejo v poštev pri skupinskem delu, kjer naj bi Git najbolj blestel.
kliknemo “Create”
če slučajno ne vidimo obstoječih datotek, izberemo prikaz “All files,…”
Po vsaki primerni spremembi ponovimo koraka:
Na GitHub moramo imeti odprt račun. Odpremo nov repositorij na zavihku “Repositories” s klikom na gumb “New”.
Vpišemo ime novega repositorija in izpolnimo ostale nastavitve ter potrdimo. Ko je repo odprt, poiščemo nekje na desni strani link s https naslovom repositorija, ki ga potrebujemo za vzpostavitev povezave s SourceTree.
V SourceTree izberemo “Repository -> Add Remote…”. Odpre se okno, kjer kliknemo “Add”.
V naslednjem oknu vpišemo želeno ime remote repositorija (npr. “origin” ali pa “github”) ter v URL polje prekopiramo pridobljeni link.
Izpolnimo preostanek obrazca, večkrat potrdimo.
Kliknemo na ikono “Push” in zberemo, kateri branch želimo pushati in na kateri server. (V našem preprostem scenariju za enega uporabnika vedno samo en branch in en server.)
Potrdimo, preverimo na GitHub, če so vidne datoteke. Za nadaljne “pushe” seveda ponovimo samo zadnja dva koraka.