Slovenščina

GIT – Git

GIT Skladišče Git se prebrskava kot mapa: spremenjene datoteke, veje, zgodovina.

Odpiranje skladišča

Gumb GIT v vrstici skoči na priljubljeni projekt; njegov desni klik da seznam: znana skladišča, »Commit«, »Zgodovina…«, veje, »Stash…« in »Odložene spremembe«, »Oznake…«, »Oddaljena skladišča«. Mapa na disku, ki še ni skladišče, tam ponudi »Kloniraj repozitorij sem…«. Projekti se dodajo sami, ko vanje vstopimo, projekt, katerega mapa je izginila, pa se pozabi – razen če manjka njegov disk: odklopljen ključek ne povzroči pozabe.

Stanje mape

Vsaka vrstica nosi svojo barvo: v sporu, nesledena, spremenjena, pripravljena, prezrta. Git datoteko opisuje po dveh oseh – indeksu in delovni kopiji – vrstica pa nima prostora, da bi pokazala obe: o barvi odloča tisto, kar je še treba narediti. Drobtinična pot pove trenutno vejo.

Priprava in commit

»Commit« odpre pogled sprememb: ena datoteka na vrstico, stolpec Sledena pa pove, kaj git ve o njej. Vrstice označimo kot povsod drugje – klik, Ctrl+klik, Shift+klik –, sporočilo napišemo spodaj in Commit odide z izbranim. Nič izbranega, nič ne odide: gumb to pove.

Gumb Nesledene v vrstici za uveljavitev skrije, česar git ne sledi: mapa, polna datotek za enkratno uporabo, ne preplavi več dveh, ki ju želite uveljaviti, in Ctrl+A ju ne vzame več s seboj. Izklopljen pove, koliko jih skriva.

Pogled sprememb skladišča: tri datoteke, njihovo stanje sledenja in vrstica za commit spodaj.
Spremembe skladišča in vrstica za commit: sporočilo, kar je izbrano, in gumb.

Ogled razlik

»Prikaži razlike« odpre diff blok za blokom, med delovno kopijo, indeksom (pripravljeno) in commitom – pred in po sta tam poimenovana. Dvojiška datoteka to pove, namesto da bi pokazala šum.

Kretnje

Veje in zgodovina

Ustvarjanje veje, preklop nanjo, združevanje – vnos nosi ime veje in odgovori ni kaj združiti: že posodobljeno ali združevanje prekinjeno: datoteke so v sporu. »Zgodovina…« našteje commite: njihov kratek prstni odtis, zadevo, avtorja, datum. Levi žleb nariše graf, vsaka vrstica na svojem, združitev pa potegne črto proti sosednjemu stolpcu. Dvoklik odpre podrobnosti commita: njegovo celotno sporočilo in datoteke, ki se jih je dotaknil.

Zgodovina skladišča: štirje commiti, njihova zadeva, avtor in graf vej v žlebu.
Zgodovina, njen graf v žlebu: dve veji iz istega korena in združitev, ki ju spet spoji.

Drevo zahtev za združitev

Drevo zahtev za združitev… v meniju gumba GIT nariše odprte MR projekta GitLab, na katerega kaže oddaljeni repozitorij. Vsaka stoji pod vejo, iz katere izhaja, zamaknjena za en korak kot kazalo: stopnja pove, v kakšnem vrstnem redu jih potrjevati, klik na kartico pa odpre MR v brskalniku.

Drevo zahtev za združitev repozitorija: main, njegove zamaknjene MR in veriga treh MR, izpeljanih ena iz druge
!31 izhaja iz !28, !35 pa iz !31: vsaka stoji pod tisto, katere commite nosi, z »po« in »cilj main«. Gumb na desni izvede checkout veje; kljukica označuje main, kjer ste.

Izmenjava z oddaljenim skladiščem

»Pull« in »Push«, s številom commitov v igri ob oznaki – ničla se ne izpiše. Veja, ki na drugi strani še ne obstaja, odide s svojim zgornjim tokom. Oddaljena skladišča se navedejo in odstranijo iz istega menija. Kadar strežnik zahteva overitev, Meneaufile to zahteva prav tako, namesto da bi obtičal brez besed.

Odlaganje na stran

»Stash…« pospravi tekoče delo brez commita, z neobvezno opisom; »Odložene spremembe« – Odloženo delo – našteje, kar čaka, in od tam ga znova uporabimo ali zavržemo. »Oznake…« jih na enak način postavi in odstrani.

Kdo je napisal to vrstico

»Opombe« v meniju datoteke pripišejo vsako vrstico njenemu commitu in avtorju. To je vprašanje, ki si ga zastavimo ob presenetljivi vrstici, seznam commitov pa nanj ne odgovori.

Spori

Datoteka v sporu se odpre s svojimi različicami: skupna različica, naša, njihova in rezultat, ki ga sestavljamo. »Vzemi vse« prelije celotno stran, »Razreši« shrani – in datoteka zapusti kategorijo v sporu.

Kloniranje

Iz mape: naslov (https://… ali git@gostitelj:org/depot.git), ime mape, ki jo je treba ustvariti, ter popolna ali plitva zgodovina – zadnjih N commitov.

Datoteke bundle

Datoteka .bundle je skladišče Git, zapakirano v eno samo datoteko: dovolj, da projekt odnesemo na ključku ali ga komu predamo, brez strežnika. Dvoklik pove, kaj nosi – njegove veje, njegove oznake –, Kloniraj sem… pa iz njega naredi običajno skladišče, tik ob njem, brez omrežja. V skladišču Ustvari bundle… v meniju GIT celotno skladišče zapakira v mapo v drugem pogledu.

Če git manjka

Meneaufile pokliče sistemski git. Če manjka ali ni v PATH, to pove, namesto da bi brez razloga spodletel.

Priročnik programa Meneaufile v slovenščini.