Це існує, але насправді це особливість git log
:
git log -p [--follow] [-1] <path>
Зауважте, що -p
також можна використовувати, щоб показати, вбудований текст відрізняється від одного коміту:
git log -p -1 <commit>
Використовувані параметри:
-p
(також -u
або --patch
) приховано deeeeeeeep на git-log
сторінці man і фактично є варіантом відображення для git-diff
. При використанні з log
ним він показує патч, який би генерувався для кожного комітету , разом із інформацією про фіксацію - і приховує коміти, які не торкаються зазначених <path>
. (Така поведінка описана в пункті далі --full-diff
, що призводить до відображення повної різниці кожного комітету.)
-1
показує лише останню зміну зазначеного файлу ( -n 1
можна використовувати замість -1
); в іншому випадку відображаються всі ненульові відмінності цього файлу.
--follow
Потрібно переглянути зміни, які відбулися до перейменування.
Наскільки я можу сказати, це єдиний спосіб негайно побачити останній набір змін, внесених у файл, не використовуючи git log
(або подібне) або підрахувати кількість втручаються змін або визначити хеш комітів.
Щоб побачити зміни старих версій, просто прокрутіть журнал або вкажіть комітку або тег, з якого можна запустити журнал. (Звичайно, якщо вказати комітку або тег, ви повернетесь до початкової проблеми з'ясування того, що є правильним фіксацією чи тегом.)
Кредит, якщо належить кредит:
- Я виявив
log -p
завдяки цій відповіді .
- Заслуга FranciscoPuga і ця відповідь за те, що мені показали
--follow
варіант.
- Кредит ChrisBetti за згадку про
-n 1
варіант та atatko для згадування -1
варіанту.
- Заслуга sweaver2112 за те, що я насправді прочитав документацію і з'ясував, що
-p
"означає" семантично.
git diff HEAD^ <file_path>