Ta knjiga pokriva, kako uporabljati Git s 30 ali nekaj podukazi, kot so checkout
, branch
, remote
itd.
Vendar ker je bil Git prvotno orodje za nadzor različic namesto polnega uporabniku prijaznega VCS-ja, ima kopico podukazov, ki delajo nižje nivojsko delo in so bili načrtovani za veriženje skupaj v stilu UNIX-a oz. so klicani iz skriptov.
Ti ukazi so v splošnem imenovani kot Gitovi ukazi »napeljave«, medtem ko so bolj uporabniku prijazni ukazi imenovani ukazi »keramike«.
Kot ste do sedaj opazili, se prvih devet poglavij knjige ukvarja skoraj ekskluzivno z ukazi keramike. Vendar v tem poglavju se boste večinoma ukvarjali z nižje nivojskimi ukazi napeljave, ker vam dajo dostop do notranjega delovanja Gita in pomagajo demonstrirati, kako in zakaj Git dela, kar dela. Mnogo teh ukazov ni mišljenih, da so uporabljeni ročno v ukazni vrstici, vendar so namenjeni bolj gradnji blokov za nova orodja in skripte po meri.
Ko poženete ukaz git init
v novem obstoječem direktoriju, Git ustvari direktorij .git
, kjer je locirano skoraj vse, kar Git shranjuje in s čimer manipulira.
Če želite iti nazaj ali klonirati svoj repozitorij, kopirati ta posamezni direktorij nekam drugam, vam da skoraj vse, kar potrebujete.
To celotno poglavje se v osnovi ukvarja s stvarmi v tem direktoriju.
Takole je običajno videti novo inicializirani direktorij .git
:
$ ls -F1
config
description
HEAD
hooks/
info/
objects/
refs/
Odvisno od svoje verzije Git lahko tam vidite tudi nekatere ostale vsebine, vendar to je sveži repozitorij git init
— to je, kar vidite privzeto.
Datoteko description
uporablja samo program GitWeb, tako da ne skrbite o njej.
Datoteka config
vsebuje vaše nastavitvene možnosti določenega projekta in direktorij info
vsebuje globalno izključitveno datoteko za ignorirane vzorce v datoteki .gitignore
, ki jim ne želite slediti.
Direktorij hooks
vsebuje vaše skripte kljuk strani odjemalca ali strežnika, katere so diskutirane v podrobnostih v ch08-customizing-git.asc.
To pusti štiri pomembne vnose: HEAD
in (treba jo je še ustvariti) datoteka index
ter direktorija objects
in refs
.
To so osrednji deli Gita.
Direktorij objects
hrani vso vsebino vaše podatkovne baze, direktorij refs
shranjuje kazalce na objekte potrditev v teh podatkih (veje, oznake, daljave in še več), datoteko HEAD
, ki kaže na vejo, ki ste jo trenutno izvlekli in datoteko index
, kjer Git shranjuje informacije vašega področja priprave.
Sedaj boste pogledali vsakega od teh razdelkov v podrobnosti, da vidite, kako Git operira.