Как да използвам Git Log за форматиране на историята на фиксиране?



Git е инструмент, който помага за организирането и управлението на изходния код на вашите приложения. Научете всичко за командата за история на git log format и как да я използвате.

В тази статия ще обсъдим някои разширени опции за форматиране и отпечатване на дневниците на фиксиране, за да извлечем информацията, от която се нуждаете, от историята на дневника на проекта. Тъй като вече знаем, води дневник на промените, ангажирани с историята на проекта, сега ще проучим повече начини, по които командата ‘git log’ е полезна.

Първо, преминавам към / проверявам клона “feature1” за удобна и по-кратка история.
Използвайте командите -





$cd myProj–Преминете към проекта git

$git функция за плащане–Направете към клон ‘feature1’



1. Форматиране на комити

1.1 Отпечатайте доста изходното съдържание в даден формат

Синтаксис: git log --pretty [=]

където, може да бъде един от една линия, къс, средно, пълен, по-пълно, електронна поща, суров, и формат:
Кога = част е пропусната, по подразбиране е средно.

1.1.1 –прецизно = една линия

Прекрасен дневник за ангажиране в „един ред“
Команда: git log --pretty = oneline
Форматира изхода в последователност:




Фиксиране - История на формата на регистрационния файл на Git - Edureka

1.1.2 –прецизно = кратко

Форматиране на изход за къс запис във формат:
ангажиране (преименуване)
Автор:



1.1.3 –прецизно = средна

Команда: git log --pretty = среда
Отпечатайте изхода за ангажиране във формат „среден“:
ангажирам
Автор :
Дата:


1.1.4 –прецизно = пълно

Команда: git log --pretty = пълен
Изходът е във формат:
ангажиране (преименуване)
Автор:
Ангажиране:


1.1.5 –съвършенно = по-пълно

Команда: git log --pretty = по-пълно
ангажиране (преименуване)
Автор:
Дата на автор :
Ангажиране:
Дата на записване:


1.1.6 - доста = имейл

Команда: git log --pretty = имейл
Отпечатайте изходни данни във формат на имейл стил:
От
От:
Дата:
Предмет: [КРЪПКА]


1.1.7 –прецизно = сурово

Команда: git log --pretty = raw
Необработеният изходен формат на регистрационния файл показва целия запис, точно както се съхранява в обекта за фиксиране.
ангажирам
дърво
родител
автор
ангажирам

1.1.8 –формат:: Персонализирано форматиране

Форматът ви позволява да посочите коя информация за обекта на фиксиране искате да отпечатате в изходния дневник на фиксирането
Нека разгледаме различните заместители, които тази опция предоставя точно като функция „C printf“ с помощта на кодови фрагменти:

Команда: git log --pretty = format: '% h% ad | % s% d [% an] '--date = кратко
Изходен формат:
| [име на автора]

% h = Съкратени идентификатори на hash-id / sha1commit
% Н = дълги идентификатори sha-1
%да се = дата на автор
= фиксиране на заглавието на тема
= имена на референтен указател (клон, таг)
% an = име на автора
-дата = кратко: Отпечатайте само датата, а не часа в четлив формат

Сега, какво ще кажете да направите този изход по-удобен за хората, като използвате цветове.
Команда:
git log --pretty = format: '% C (жълто)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short


Някои други заместители, използвани в горния кодов фрагмент, са:
% C (жълто) : Превърнете следния низ в жълто
% Creset : Възстановете следния низ обратно към цвета по подразбиране (бял)
% Зелена : променете следния низ в зелен
%Предполагам: Променете следния низ в червен
% Cblue: Направете името на автора синьо на цвят

Не е нужно да запомняте и пишете цялата команда всеки път, просто използвайте кратко име като git псевдоним както е показано по-долу:
Команда:
git config --global alias.c-hist 'log --pretty = format:'% C (жълто)% h% Creset% ad | % Cgreen% s% Creset% Cred% d% Creset% Cblue [% an] '--date = short'

„C-hist“ представлява ° С персонализиран- история Ори
Така че, както бихте забелязали, аз задавам своя глобален git конфигурация файл със стойностите.

как да направя тестване на база данни

Сега, за да проверите историята на текущия клон, всичко, което трябва да направите, е да изпълните командата по следния начин:
Команда: отидете c-hist

1.2 –abbrev-commit: Съкратете git commit hash-id

Команда: git log --abbrev-commit
Пълното 40-байтово шестнадесетично име на обект за фиксиране се съкращава до 7 байта по подразбиране.


Нека го класираме с--една линия‘Опция за удобна гледка, така:
Команда: git log --abbrev-commit --oneline

По-вълнуващото е, че можете също така да посочите дължината на байта на идентификаторите sha-1, като използвате опцията ‘–abbrev =’, както е показано по-долу:
Команда: git log --abbrev-commit --abbrev = 5 --oneline



Ясно е, че маркираните идентификатори sha-1 са намалени до 5-байтов размер.

1.3 –но-съкращение-ангажиране

Показване на пълното 40-байтово име на обект за шестнадесетично фиксиране.
Това отрича –Abbrev-commit и тези опции, които предполагат
това като “–oneline”.
Команда: git log --pretty = oneline --no-shorv-commit



1.4 - относителна дата

Команда: git log --relative-date

Моля, обърнете внимание, че това подчертано време е подложено на промяна във връзка с времето, когато изпълнявате командата на вашата система.

1,5 - дата =

Можете също така да форматирате датата на регистрационните файлове в която и да е от следните опции за форматиране:

1.5.1 –дата = относителна

Команда :git log --date = относително
Това е синоним на горната команда „git log --relative-date”И отпечатва същите ангажименти.

1.5.2 –дата = местна

Команда : git log --date = local

1.5.3 - дата = изо

Команда: git log --date = iso

1.5.4 - дата = изо-строг

Команда: git log --date = iso-strict

1.5.5 - дата = rfc

Команда: git log --date = rfc

1.5.6 –дата = кратка

Команда: git log --date = кратко

1.5.7 –date = raw (показва датата в секунди)

Команда: git log --date = raw
Отпечатайте времето като секунди от unix epoc време (01 януари 1970 г.), последвано от часовата зона.

1.5.8 - дата = човек

Команда: git log --date = човек

1.5.9 - дата = unix

Показва датата като unix epoc (UTC) време.
Команда: git log --date = unix

1.6 - родители

Отпечатайте също родителите на всеки ангажимент във формат:
Команда: git log --parents
Изходна команда на Oneliner: git log --parents --oneline

Точки, които трябва да се отбележат:
C366419 е обединяване на сливане, следователно има съответно 2 родители: такса30c и 4920adc
По същия начин

1d67b50 е ангажимент за сливане, който е резултат от обединяване f2ff2e4 и abb694b
078f9f5 е ангажимент за сливане, създаден чрез сливане 9a2412e и ab3a5e5
Като има предвид, 86792c6 е първоначалният ангажимент, следователно няма родител.

1,7 –деца

Отпечатайте и децата във формата
Команда: git log --children --oneline

Забележка :
006b9ce е най-новият коммит, следователно все още няма обект за фиксиране на деца. Следващата промяна, която правите и ангажирате в този клон, ще бъде обектът за дъщерно ангажиране на този последен идентификатор sha-1

1.8 –граф

Начертайте текстово графично представяне на историята на фиксирането преди идентификаторите sha-1.
Команда: git log --graph
Подобрен изход на oneliner: git log --graph --oneline


Това ви позволява да разберете кога, как и защо и други клонове са обединени в текущо отметнатия клон.

1.9 - шоу-линейно прекъсване

Команда: git log --show-linear-break
Това е полезна команда, за да се посочи бариера между 2 последователни фиксации, които не принадлежат към линеен клон, с други думи фиксиранията, които идват от различни клонове.


Сравнете горния изход с изхода на командата ‘git log –graph’, който ясно показва как са били обединени фиксирането на „linear-break“.

Бонус: Обобщение на изхода на git log: ‘git shortlog’

git shortlog‘Команда категоризира авторите на регистрите на фиксирането и отпечатва обобщено обобщение, като посочва ангажиментите, направени от всеки автор.
Команда: git log shortlog

Команда : git log short -s
-s означава – резюме, потиска описанието на фиксирането и просто отпечатва броя на ангажиментите от всеки автор по следния начин:

Освен това можете да форматирате изхода, като използвате същите заместители, както е обсъдено в „--pretty = формат‘Опция
Опитайте командата: git shortlog --format = '% h | %с'

Следователно трябва да се съгласите, че този изход има по-голям смисъл, тъй като показва идентификационния номер и за всеки автор заедно с общия брой на ангажиментите.

Забележка : Интересно е да се отбележи, че много лесно можете да намерите клона, който е направил определен ангажимент. Струва си да разгледаме задълбочено тази дискусия в следващите статии.

Така че с това стигнахме до края на товаИстория на Git log форматблог, надявам се да ви е бил информативен.

В този пост научихме някои техники за форматиране, които отпечатват информацията за проекта по по-персонализиран и лесен за ползване начин. Сега трябва да знаете как ефективно да използвате параметрите на командата ‘git log’, за да извадите всяка информация, която ви е необходима за изходния код, от вашата ангажирана история. И така, с това стигнахме до края на тази статия, надявам се да я намерите информативна.

Ако сте любопитни да научите повече, можете да проверите това от Edureka, доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят. Курсът за обучение за сертифициране на Edureka DevOps помага на обучаващите се да разберат какво е DevOps и да придобият опит в различни процеси и инструменти на DevOps като Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack и GIT за автоматизиране на множество стъпки в SDLC.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на тази статия за „История на форматите на регистрационния файл на Git“ и ние ще се свържем с вас.