Предположим, у меня есть следующее git-репо, в котором файл был добавлен в коммит № 2 и удален в коммите № 3:
commit de36dee94ab54ab61dd2c6e9164756c1a608bd13 (HEAD -> master)
Author: Keith <keith>
Date: Tue Sep 25 09:57:45 2018 -0500
#3
foo.txt | 1 -
1 file changed, 1 deletion(-)
commit 1fddf03367b9e2e4b65f96f4fc5db7d7d353f50c
Author: Keith <keith>
Date: Tue Sep 25 09:57:37 2018 -0500
#2
foo.txt | 1 +
1 file changed, 1 insertion(+)
commit 4ab9494db091077879a74a47f83fe568a7efd133
Author: Keith <keith>
Date: Tue Sep 25 09:57:23 2018 -0500
#1
README.md | 1 +
1 file changed, 1 insertion(+)
Теперь предположим, что меня интересует сводка изменений, внесенных в диапазон коммитов # 1- # 3.Если я просто сделаю git diff HEAD 4ab9494db
, я не получу вывод, так как репо находится в одном и том же состоянии в начале и в конце;Я никогда не увижу, чтобы был файл foo.txt
, который появлялся и исчезал за это время.Я также мог бы сделать git log --stat
, как указано выше, но, предполагая, что это гораздо более крупное репо с гораздо более длинной историей, это может быть довольно громоздким.
Есть ли способ получить краткую сводку всех измененных файлов,даже если одно изменение «отменяет» другое?