Компьютеры · Инструкция
Как сравнить коммиты по содержимому с git patch-id
Commit SHA меняется вместе с метаданными и родителями, поэтому он не подходит для поиска «того же изменения» после переп
Короткий ответ
Передайте diff коммита в `git patch-id --stable` и сравните первый хеш для двух коммитов. Совпадающий patch-id указывает на эквивалентные изменения.
Что сделать
- 1: Получите diff нужного коммита через `git show <commit>`.
- 2: Передайте его в `git patch-id --stable`.
- 3: Сравните первый хеш patch-id для двух коммитов: одинаковый ID указывает на практически эквивалентный патч.
Команда или настройка
- git show <commit> | git patch-id --stable
Проверка
- Получайте patch-id одинаковым режимом, например `--stable`, для обоих сравниваемых коммитов.
- Сравнивайте именно первый хеш в выводе `git patch-id`.
- Не используйте совпадение patch-id как доказательство одинаковых метаданных коммита.
Важно
Patch-id предназначен для сравнения патчей, а не полного содержимого commit object или метаданных.
Что учитывать
Patch-id предназначен для сравнения патчей, а не полного содержимого commit object или метаданных.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. git-patch-id Documentation). Пример и формулировки — редакция N1RO на 2026-09-18.