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 | Различия между двумя точками |
Попробуйте!
- Просмотрите последний коммит в деталях:
git show - Посмотрите лог, чтобы найти более старый коммит:
git log --oneline - Покажите конкретный коммит:
git show <sha>(используйте SHA из лога) - Сравните:
git show HEAD~1, чтобы увидеть предыдущий коммит
Ключевые моменты
git showотображает полные детали и дифф коммита- Без аргументов показывает HEAD
- Принимает любую ссылку: SHA, ветку, тег, HEAD~N
- Дифф показывает, что именно изменил этот единственный коммит
- Отличный компаньон для
git blame— blame находит SHA, show объясняет его