Тур по Git
Продвинутый Git / Урок 5.9

git show — Просмотр коммитов

git show отображает детали конкретного коммита — его сообщение, автора и точные изменения (дифф), которые он внёс. В то время как git log даёт обзор, git show даёт полную картину одного коммита.

Базовое использование

git show

Без аргументов показывает самый последний коммит (HEAD). Вывод включает:

commit a1b2c3d4e5f6...
Author: Alice <[email protected]>
Date:   Mon Jan 15 10:30:00 2024

    Add user authentication

diff --git a/auth.js b/auth.js
new file mode 100644
--- /dev/null
+++ b/auth.js
@@ -0,0 +1,5 @@
+function authenticate(user) {
+  // verify credentials
+  return true;
+}

Просмотр конкретного коммита

git show e4f5g6h
git show main
git show v1.0

Вы можете передать любую ссылку — SHA, имя ветки или тег.

Чтение вывода

Вывод состоит из двух частей:

1. Метаданные коммита

  • SHA коммита — полный хеш
  • Автор — имя и email
  • Дата — когда был создан
  • Сообщение — сообщение коммита (с отступом)

2. Дифф

Показывает, что именно изменилось:

  • Строки, начинающиеся с +, были добавлены
  • Строки, начинающиеся с -, были удалены
  • Заголовки @@ показывают затронутые номера строк

Полезные варианты

КомандаПоказывает
git show HEADПоследний коммит
git show HEAD~1Предыдущий коммит
git show <sha>Конкретный коммит
git show <branch>Последний коммит в ветке
git show <tag>Отмеченный тегом коммит

git show, git log и git diff

КомандаНазначение
git logСписок нескольких коммитов (обзор)
git show <commit>Метаданные + дифф одного коммита
git diff A BРазличия между двумя точками

Попробуйте!

  1. Просмотрите последний коммит в деталях: git show
  2. Посмотрите лог, чтобы найти более старый коммит: git log --oneline
  3. Покажите конкретный коммит: git show <sha> (используйте SHA из лога)
  4. Сравните: git show HEAD~1, чтобы увидеть предыдущий коммит

Ключевые моменты

  • git show отображает полные детали и дифф коммита
  • Без аргументов показывает HEAD
  • Принимает любую ссылку: SHA, ветку, тег, HEAD~N
  • Дифф показывает, что именно изменил этот единственный коммит
  • Отличный компаньон для git blame — blame находит SHA, show объясняет его
🎯

Цель

Используйте git show для просмотра деталей коммитов и diff

Terminal
$

No commits yet. Run `git init` and create your first commit.