Close

git show


Что такое git-show?


git-show — это утилита командной строки, которая используется для просмотра подробных данных об объектах Git, например больших двоичных объектах, деревьях, тегах и коммитах. Поведение git-show различается в зависимости от типа объекта.

Для тегов отображаются комментарии к тегам и другие объекты, включенные в тег. Для деревьев отображаются имена и содержимое объектов дерева. Для больших двоичных объектов отображается непосредственно содержимое этих объектов. Для коммитов отображаются комментарии журнала коммитов и выходные данные сравнения, показывающие изменения в коммите.

Все объекты Git вызываются с помощью ссылок. По умолчанию git-show выполняет ссылку HEAD. Ссылка HEAD всегда указывает на последний коммит текущей ветки. Поэтому можно использовать git-show для просмотра комментариев журнала и выходных данных сравнения последнего коммита.

Параметры git-show


<объект>…
Можно передать ссылку на объект или список объектов, чтобы проанализировать их. Если объекты явным образом не переданы, git-show по умолчанию выводит данные для ссылки HEAD.

--pretty[=<формат>]
С параметром pretty указывается одно из следующих дополнительных значений формата: oneline, short, medium, full, fuller, email, raw и format:<строка>. Если этот параметр опущен, устанавливается значение формата по умолчанию medium. Каждый вариант формата представляет собой шаблон, по которому Git форматирует выводимые данные. Вариант oneline удобно использовать для отображения списка коммитов.

--abbrev-commit
Этот параметр сокращает длину идентификатора коммита в выводимых данных. Идентификаторы коммитов длиной в 40 символов может быть неудобно просматривать в узком окне терминала. Этот параметр в сочетании с параметром --pretty=oneline позволяет git log вывести данные в очень компактном виде.

--no-abbrev-commit
Всегда показывать полный 40-символьный идентификатор коммита. При этом --abbrev-commit и любые другие параметры, сокращающие идентификаторы коммитов, такие как формат --oneline, будут игнорироваться.

базы данных
Связанные материалы

Перемещение полного репозитория Git

Логотип Bitbucket
СМ. РЕШЕНИЕ

Изучите Git с помощью Bitbucket Cloud

--oneline
Это краткая форма расширенной команды --pretty=oneline --abbrev-commit.

--encoding[=<кодировка>]
В комментариях git log по умолчанию устанавливается кодировка символов UTF-8. Параметр encoding позволяет изменить кодировку символов вывода. Этот параметр удобно использовать при работе с Git в среде с другой кодировкой символов, например в терминале для азиатских языков.

>--expand-tabs=<n>
--expand-tabs
--no-expand-tabs

Эти параметры заменяют символы табуляции пробелами при выводе комментариев журнала. Можно задать значение n, чтобы определить, скольким пробелам равен символ табуляции. Если значение n не указано, символы табуляции будут заменяться 8 пробелами. Параметр --no-expand-tabs даст результат, эквивалентный n=0.

--notes=<ссылка>
--no-notes

В Git есть система заметок, которая позволяет прикреплять к объектам произвольные метаданные «примечаний». Эти данные можно скрыть или отфильтровать при использовании git-show.

--show-signature
Этот параметр подтверждает, что коммит подписан зашифрованной подписью, для чего передает его подкоманде gpg.

Форматы pretty для git-show


Описанный выше параметр --pretty работает с несколькими второстепенными параметрами, влияющими на формат вывода git-show. Эти второстепенные параметры перечислены ниже вместе с примером шаблона.

  • oneline
    <sha1><строка заголовка>

Параметр oneline умещает в одной строке максимально возможный объем информации.

  • short
    commit <sha1>
    Author: <автор>
    <строка заголовка>
  • medium
    commit <sha1>
    Author: <автор>
    Date: <дата автора>
    <строка заголовка>
    <полный комментарий к коммиту>
  • full
    commit <sha1>
    Author: <автор>
    Commit: <разработчик>
    <строка заголовка>
    <полный комментарий к коммиту>
  • fuller
    commit <sha1>
    Author: <автор>
    AuthorDate: <дата автора>
    Commit: <разработчик>
    CommitDate: <дата разработчика>
    <строка заголовка>
    <полный комментарий к коммиту>
  • email
    From <sha1> <дата>
    From: <автор>
    Date: <дата автора>
    Subject: [PATCH] <строка заголовка>
    <полный комментарий к коммиту>
  • raw
    При форматировании с параметром raw игнорируются другие прямые параметры форматирования, переданные команде git-show, и коммит выводится в том виде, в котором он сохранен в объекте. Параметр raw игнорирует значения --abrev и --no-abbrev и всегда выводит родительские коммиты.
  • format:
    Параметр format позволяет определить пользовательский формат вывода. Он работает аналогично команде printf в языке C. Параметр --pretty=format использует дополнительное значение строки шаблона. Шаблон имеет доступ к переменным-заполнителям, которые заполняются данными из объекта коммита. Эти заполнители перечислены ниже:

    %H: хеш коммита
    %h: сокращенный хеш коммита
    %T: хеш дерева
    %t: сокращенный хеш дерева
    %P: хеши родительских элементов
    %p: сокращенные хеши родительских элементов
    %an: имя автора
    %aN: имя автора
    %ae: электронная почта автора
    %aE: электронная почта автора
    %ad: дата автора (в формате учитывается параметр --date=)
    %aD: дата автора, стиль RFC2822
    %ar: дата автора, относительная
    %at: дата автора, метка времени UNIX
    %ai: дата автора, формат ISO 8601
    • %cn: имя разработчика
    %cN: имя разработчика
    %ce: электронная почта разработчика
    %cE: электронная почта разработчика
    %cd: дата разработчика
    %cD: дата разработчика, стиль RFC2822
    %cr: дата разработчика, относительная
    %ct: дата разработчика, метка времени UNIX
    %ci: дата разработчика, формат ISO 8601
    %d: имена ссылок, аналогично параметру --decorate команды git-log(1)
    %e: кодировка
    %s: тема
    %f: очищенная строка темы, подходящая для имени файла
    • %b: тело
    %N: примечания к коммиту
    %gD: средство выбора reflog, например refs/stash@{1}
    %gd: сокращенное средство выбора reflog, например stash@{1}
    %gs: тема reflog
    %Cred: переключение цвета на красный
    %Cgreen: переключение цвета на зеленый
    %Cblue: переключение цвета на синий
    %Creset: сброс цвета
    %C(…): спецификация цвета, как указано в параметре конфигурации color.branch.*
    %m: метка левого края, правого края или границы
    %n: новая строка
    %%: необработанный %
    %x00: печать байта из шестнадцатеричного кода
    %w([[,[,]]]): переключение переноса строк аналогично параметру -w команды git-shortlog

Примеры git-show


git show --pretty="" --name-only bd61ad98

Эта команда выводит список всех файлов, задействованных в коммите.

git show REVISION:path/to/file

Эта команда выводит конкретную версию файла. Замените элемент REVISON sha-хешем Git.

git show v2.0.0 6ef002d74cbbc099e1063728cab14ef1fc49c783

Эта команда выводит тег v2.0.0, а также коммит в 6ef002d74cbbc099e1063728cab14ef1fc49c783.

git show commitA...commitD

Эта команда выводит все коммиты в диапазоне между commit A и commit D.

Резюме


git-show — это универсальная команда для анализа объектов в репозитории Git. С ее помощью можно найти конкретные версии определенных файлов. При анализе диапазона коммитов с помощью git-show выводятся все отдельные коммиты в указанном диапазоне. Команду git-show удобно использовать для создания примечаний к исправлениям и отслеживания изменений в репозитории.


Поделитесь этой статьей
Следующая тема

Рекомендуемые статьи

Добавьте эти ресурсы в закладки, чтобы изучить типы команд DevOps или получать регулярные обновления по DevOps в Atlassian.

Люди сотрудничают друг с другом, используя стену со множеством инструментов

Блог Bitbucket

Рисунок: DevOps

Образовательные программы DevOps

Демонстрация функций в демо-зале с участием экспертов Atlassian

Как инструмент Bitbucket Cloud работает с Atlassian Open DevOps

Подпишитесь на информационную рассылку по DevOps

Thank you for signing up