Предност система за контролу верзија је у томе што бележи промене. Ови записи нам омогућавају да преузмемо податке као што су урезивања, откривање грешака, ажурирања. Али, сва ова историја ће бити бескорисна ако не можемо да се крећемо њоме. У овом тренутку, потребна нам је команда гит лог.
Гит дневник је услужни алат за преглед и читање историје свега што се дешава са спремиштем. Више опција се може користити са гит дневником да би историја била конкретнија.
Генерално, гит дневник је запис урезивања. Гит дневник садржи следеће податке:
Како изаћи из гит лог команде?
Можда се догоди ситуација, покренете гит лог команду и заглавите тамо. Желите да куцате или се вратите на басх, али не можете. Када кликнете на Ентер тастер, он ће вас навигирати до старије команде до краја заставице.
Решење овог проблема је да притисните тхе к (К за одустајање) . То ће вас избацити из ситуације и вратити вас у командну линију. Сада можете извршити било коју од наредби.
Основни Гит дневник
Гит лог команда је једна од најчешћих команди гита. То је најкориснија команда за Гит. Сваки пут када треба да проверите историју, морате да користите гит лог команду. Основна гит лог команда ће приказати најновија урезивања и статус главе. Користиће се као:
$ git log
Горња команда ће приказати последње урезивање. Размотрите доњи излаз:
Горња команда наводи сва недавна урезивања. Сваки урезивање садржи неки јединствени сха-ид, који генерише СХА алгоритам. Такође укључује датум, време, аутора и неке додатне детаље.
Можемо да извршимо неке радње као што су померање, скакање, померање и затварање на командној линији. Да бисте се померали на командној линији, притисните к за кретање нагоре, ј за кретање надоле, размакницу за скроловање надоле за целу страницу да бисте се померали нагоре за страницу и к да бисте изашли из командне линије.
<Гит Лог Онелине
Онелине опција се користи да прикаже излаз као једно урезивање по реду. Такође укратко приказује излаз попут првих седам знакова урезивања СХА и поруке урезивања.
Користиће се на следећи начин:
$ git log --oneline
Дакле, обично можемо рећи да --онелине заставица узрокује да се гит лог прикаже:
- једно урезивање по реду
- првих седам знакова СХА
- порука за урезивање
Размотрите доњи излаз:
Као што можемо прецизније видети из горњег излаза, свако урезивање је дато само у једном реду са седмоцифреним сха бројем и поруком урезивања.
Гит Лог Стат
Команда дневника приказује датотеке које су измењене. Такође приказује број редова и збирни ред укупних записа који су ажурирани.
Генерално, можемо рећи да се опција стат користи за приказ
саира бану глумац
- измењене датотеке,
- Број линија које су додате или уклоњене
- Промењена је линија сажетка укупног броја записа
- Линије које су додате или уклоњене.
Користиће се на следећи начин:
$ git log --stat
Горња команда ће приказати датотеке које су измењене. Размотрите доњи излаз:
Из горњег излаза, можемо видети да су сва наведена урезивања модификације у спремишту.
Гит лог П или закрпа
Команда гит лог патцх приказује датотеке које су измењене. Такође приказује локацију додатих, уклоњених и ажурираних линија.
Користиће се као:
$ git log --patch
Ор
$ git log -p
Генерално, можемо рећи да се заставица --патцх користи за приказ:
примарни кључ и композитни кључ у скл
- Модификоване датотеке
- Локација линија које сте додали или уклонили
- Конкретне промене које су направљене.
Размотрите доњи излаз:
Горњи излаз приказује измењене датотеке са локацијом линија које су додате или уклоњене.
Гит Лог Грапх
Гит лог команда омогућава преглед вашег гит дневника као графикона. Да бисте навели урезивање у облику графикона, покрените гит лог команду са --грапх опцијом. Покреће се на следећи начин:
$ git log --graph
Да бисте резултат учинили конкретнијим, можете комбиновати ову команду са опцијом --онелине. Радиће на следећи начин:
$ git log --graph --oneline
Филтрирање историје урезивања
Можемо филтрирати излаз према нашим потребама. То је јединствена карактеристика Гита. На излаз можемо применити многе филтере као што су количина, датум, аутор и још много тога. Сваки филтер има своје спецификације. Могу се користити за имплементацију неких операција навигације на излазу.
Хајде да детаљно разумемо сваки од ових филтера.
По износу:
Можемо ограничити број излазних урезивања помоћу гит лог команде. То је најконкретнија команда. Ова команда ће уклонити сложеност ако сте заинтересовани за мање урезивања.
Да бисте ограничили излаз гит дневника, укључујући опцију -. Ако желимо само последња три урезивања, онда можемо проследити аргумент -3 у гит лог команди. Размотрите доњи излаз:
Као што видимо из горњег излаза, можемо ограничити излаз гит дневника.
По датуму и времену:
Можемо филтрирати излаз по датуму и времену. Морамо проћи --после или -пре него што аргумент за одређивање датума. Оба аргумента прихватају различите формате датума. Радиће се на следећи начин:
$ git log --after='yy-mm-dd'
Горња команда ће приказати сва урезивања направљена након датог датума. Размотрите доњи излаз:
Горња команда наводи сва урезивања након '2019-11-01'.
Такође можемо да проследимо применљиву референтну изјаву као што је „јуче“, „пре недељу дана“, „пре 21 дан“ и још много тога. Покреће се као:
git log --after='21 days ago'
Горња команда ће приказати урезивања која су направљена пре 21 дан. Размотрите доњи излаз:
Такође можемо да пратимо урезивања између два датума. Да бисте пратили урезивања која су направљена између два датума, проследите референцу изјаве --пре него што и --после Датум. Претпоставимо да желимо да пратимо урезивања између '2019-11-01' и '2019-11-08'. Покрећемо наредбу на следећи начин:
$ git log --after='2019-11-01' --before='2019-11-08 '
Горња команда ће приказати урезивање направљено између датума. Размотрите доњи излаз:
Горњи излаз приказује урезивање између датог периода. Можемо користити --синце и --унтил уместо --афтер и --бефоре. Зато што су синоними, респективно.
Аутор:
Можемо да филтрирамо урезивање по одређеном кориснику. Претпоставимо да желимо да наведемо урезивања само од стране одређеног члана тима. Можемо користити ознаку -аутхор да филтрирамо урезивање према имену аутора. Ова команда узима регуларни израз и враћа листу урезивања које су направили аутори који одговарају том шаблону. Можете користити тачан назив уместо шаблона. Ова команда ће се покренути на следећи начин:
$ git log --author='Author name'
Горња команда ће приказати сва урезивања датог аутора. Размотрите доњи излаз:
Из горњег резултата можемо видети да је све урезивање од стране аутора Им Двиведи1 су наведени.
Можемо користити стринг уместо регуларног израза или тачног имена. Размотрите следећу изјаву:
$ git log --author='Stephen'
Горња изјава ће приказати сва урезивања чији аутор укључује име, Степхен. Име аутора не мора бити потпуно подударно; само има наведену фразу.
Као што знамо, имејл аутора је такође укључен у име аутора, тако да можемо користити имејл аутора као образац или тачну претрагу. Претпоставимо да желимо да пратимо урезивања аутора чија је услуга е-поште гоогле. Да бисмо то урадили, можемо да користимо џокере као „@гмаил.цом“. Размотрите следећу изјаву:
$ git log -author='@gmail.com'
Горња команда ће приказати урезивање аутора као што је дато у обрасцу. Размотрите доњи излаз:
Поруком за урезивање:
Да бисте филтрирали урезивање према поруци урезивања. Можемо користити опцију греп и она ће радити као опција аутора.
Покреће се на следећи начин:
$ git log --grep=' Commit message.'
Можемо користити кратку форму поруке урезивања уместо потпуне поруке. Размотрите доњи излаз.
нумпи меан
Горњи излаз приказује сва урезивања која садрже реч урезивање у својој поруци урезивања.
Доступне су многе друге опције филтрирања, као што можемо да филтрирамо по имену датотеке, садржају и још много тога.