Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
-
2.51.0
2025-08-18
- 2.50.1 no changes
-
2.50.0
2025-06-16
- 2.41.1 → 2.49.1 no changes
-
2.41.0
2023-06-01
- 2.39.1 → 2.40.4 no changes
-
2.39.0
2022-12-12
- 2.34.1 → 2.38.5 no changes
-
2.34.0
2021-11-15
- 2.31.1 → 2.33.8 no changes
-
2.31.0
2021-03-15
- 2.30.1 → 2.30.9 no changes
-
2.30.0
2020-12-27
- 2.29.1 → 2.29.3 no changes
-
2.29.0
2020-10-19
- 2.23.1 → 2.28.1 no changes
-
2.23.0
2019-08-16
- 2.18.1 → 2.22.5 no changes
-
2.18.0
2018-06-21
- 2.16.6 → 2.17.6 no changes
- 2.15.4 no changes
- 2.13.7 → 2.14.6 no changes
-
2.12.5
2017-09-22
-
2.11.4
2017-09-22
- 2.9.5 → 2.10.5 no changes
-
2.8.6
2017-07-30
-
2.7.6
2017-07-30
- 2.5.6 → 2.6.7 no changes
-
2.4.12
2017-05-05
-
2.3.10
2015-09-28
- 2.1.4 → 2.2.3 no changes
-
2.0.5
2014-12-17
ОПИС
Анотує кожен рядок у вказаному файлі інформацією про коміт, у якому рядок було додано. За бажанням, анотує з вказаної ревізії.
Єдина різниця між цією командою та git-blame[1] у використанні дещо різних форматів виводу і ця команда існує лише задля підтримки зворотньої сумісності зі скриптами, що вже існують, та надання звичнішої назви команди для людей, що приходять з інших систем управління вихідним кодом.
ОПЦІЇ
- -b
-
Показує порожній SHA-1 для граничних комітів. Поведінка також може бути задана за допомогою параметра конфігурації
blame.blankBoundary
. - --root
-
Не розглядає кореневі коміти як межі. Поведінка також може бути задана за допомогою параметра конфігурації
blame.showRoot
. - --show-stats
-
Подає додаткову статистику наприкінці інформації про авторство.
- -L <початок>,<кінець>
- -L :<ім’я_функції>
-
Анотує лише проміжок рядків, заданий за допомогою <початку>,<кінця> або за регулярним виразом <ім’я_функції> назви функції. Може бути задано декілька разів. Допускається накладання проміжків.
<початок> та <кінець> необов’язкові.
-L
<початок> або-L
<початок>,
охоплює рядки від <початку> до кінця файлу.-L
,
<кінець> - від початку файлу до <кінця>.<start> і <end> може мати одну з цих форм:
-
<number>
Якщо <start> або <end> є числом, воно визначає абсолютний номер рядка (рядки рахуються від 1).
-
/
<regex>/
Ця форма використовуватиме перший рядок, що відповідає заданому POSIX <regex>. Якщо <start> є регулярним виразом, пошук буде розпочато з кінця попереднього діапазону
-L
, якщо такий є, інакше з початку файлу. Якщо <start> є^/
<regex>/
, пошук буде розпочато з початку файлу. Якщо <end> є регулярним виразом, пошук буде розпочато з рядка, заданого <start>. -
+
<offset> або-
<offset>Це дійсне лише для <end> та визначатиме кількість рядків до або після рядка, заданого <start>.
Якщо
:
<funcname> вказано замість <start> та <end>, це регулярний вираз, який позначає діапазон від першого рядка funcname, що відповідає <funcname>, до наступного рядка funcname.:
<funcname> шукає з кінця попереднього діапазону-L
, якщо такий є, інакше з початку файлу.^:
<funcname> шукає з початку файлу. Назви функцій визначаються так само, якgit
diff
обчислює заголовки патчів (див. «Визначення власного заголовка hunk» у gitattributes[5]). -
- -l
-
Показує повне значення ревізії (Типово: вимкнено).
- -t
-
Показує необроблену мітку часу (Типово: вимкнено).
- -S <файл_ревізій>
-
Використовує ревізії із вказаного файлу ревізій замість виклику git-rev-list[1].
- --reverse <ревізія>..<ревізія>
-
Рухає історію вперед, а не назад. Замість відображення ревізії, у якій рядок з’явився, відображає останню ревізію у якій він існував. Для цього потрібно вказати проміжок ревізій, наприклад, ПОЧАТОК..КІНЕЦЬ, де рядок, який ви шукаєте, повинен існувати у ПОЧАТКУ. git blame --reverse ПОЧАТОК є скороченням для git blame --reverse ПОЧАТОК..HEAD.
- --first-parent
-
Слідує лише за першим батьківським комітом після того, як побачить коміт злиття. Ця опція може бути використана для визначення, коли рядок з’явився саме у певній гілці, а не коли його в цілому було додано.
- -p
- --porcelain
-
Показує у форматі, призначеному для машинного використання.
- --line-porcelain
-
Показує у "порцеляновому" форматі (як за використання
--porcelain
), але виводить інформацію про коміт для кожного рядка, а не лише за першої згадки про коміт. - --incremental
-
Показує результати покроково у форматі, призначеному для машинного використання.
- --encoding=<кодування>
-
Визначає кодування для виводу імені автора та заголовку коміту. Встановлення значення
none
призводить до виводу неконвертованих даних. Детальніше дивіться обговорення кодування на сторінці посібника git-log[1]. - --contents <файл>
-
Анотує використовуючи вміст вказаного файлу, починаючи з <ревізії>, якщо її визначено, або ж з HEAD. Ви можете вказати
-
аби команда зчитувала контент файлу зі стандартного вводу. - --date <формат>
-
Визначає формат виводу дати. Якщо цей параметр відсутній, буде використано значення параметру конфігурації
blame.date
. Якщо ж і його немає, то буде використано формат ISO. Задля ознайомлення із підтримуваними значенням дивіться обговорення параметру--date
у git-log[1]. - --[no-]progress
-
Типово, статус виконання виводиться у стандартному потоці помилок, коли він підключений до терміналу. Цей прапорець дозволяє виводити прогрес навіть коли такий потік не підключено.
--progress
не може використовуватися разом з--porcelain
чи--incremental
. - -M[<число>]
-
Виявляє переміщені чи скопійовані рядки всередині файлу. Коли коміт переміщує чи копіює сукупність рядків (наприклад, коли вихідний файл містить рядок А і потім Б, а коміт переставляє спочатку Б, а тоді А), традиційний алгоритм розпізнає лише половину руху і, зазвичай, приписує рядки, що були переміщені вгору (тобто Б), батьківському коміту, а рядки, що були переміщені вниз (тобто А), - дочірньому. Із цим параметром, обидві групи рядків приписуються батьківському шляхом виконання додаткових перевірок.
<число> необов’язкове. Це нижня межа кількості буквено-цифрових символів, які Git має визначити як переміщені/скопійовані всередині файлу, щоб пов’язати ці рядки із батьківським комітом. Типово дорівнює 20.
- -C[<число>]
-
На додачу до
-M
визначає переміщені або скопійовані рядки з інших файлів, що були змінені у тому самому коміті. Це корисно коли ви реорганізовуєте вашу програму та переміщуєте код між файлами. Коли цей параметр вказано двічі, команда додатково шукає копії з інших файлів у коміті, в якому файл було створено. Якщо ж його вказано тричі, то команда додатково шукає копії з інших файлів у будь-якому коміті.<число> необов’язкове. Це нижня межа кількості буквено-цифрових символів, які Git має визначити як переміщені/скопійовані між файлами, аби пов’язати ці рядки із батьківським комітом. Типово дорівнює 40. Якщо вказано більше одного параметру
-C
, то буде використано <число> останнього з них. - --ignore-rev <ревізія>
-
Ігнорувати зміни, внесені ревізією, під час призначення звинувачення, ніби змін ніколи не було. Рядки, які були змінені або додані ігнорованим комітом, будуть звинувачені в попередньому коміті, який змінив цей рядок або сусідні рядки. Цей параметр можна вказати кілька разів, щоб ігнорувати більше однієї ревізії. Якщо встановлено параметр конфігурації
blame.markIgnoredLines
, то рядки, які були змінені ігнорованим комітом і віднесені до іншого коміту, будуть позначені символом ? у виводі звинувачення. Якщо встановлено параметр конфігураціїblame.markUnblamableLines
, то ті рядки, яких торкнувся ігнорований коміт, які ми не змогли віднести до іншої ревізії, позначені символом *. У режимах porcelain ми друкуємо ignored та unblamable на новому рядку відповідно. - --ignore-revs-file <файл>
-
Нехтує ревізіями, що перелічені у <файлі>, який має бути в тому ж форматі що й
fsck.skipList
. Цей параметр може бути вказано декілька разів. Ці файли будуть опрацьовані після усіх файлів, що визначені параметром конфігураціїblame.ignoreRevsFile
. Порожнє ім’я файлу (""
) очищає перелік ревізій з попередніх опрацьованих файлів. - --color-lines
-
Забарвлює анотації до рядків у типовому форматі в інший колір, якщо зміни походять від того самого коміту, що й попередній рядок. Це полегшує розрізнення блоків коду внесених різними комітами. Типовим кольором є ціановий, який може бути налаштований параметром конфігурації
color.blame.repeatedLines
. - --color-by-age
-
Забарвлює анотації до рядків у типовому форматі залежно від віку рядка. Параметр конфігурації
color.blame.highlightRecent
визначає який колір застосовувати для кожного вікового проміжку. - -h
-
Показує підказку.
GIT
Частина набору git[1]