В Git, как я могу перечислить все файлы, которые существуют в ветви A, которые не существуют в ветви B

Могу ли я использовать команду Git, которая перечислит имена всех файлов, которые существуют в одной ветви, которые не существуют в другой ветви?

Предыстория: кто-то удалил историю, а затем нажал оригинал / мастер. Некоторые члены команды говорят, что им не хватает некоторых файлов. Я думаю, что я восстановил недостающие файлы с помощью патча, который я создал из команд diff. Я разветвил мастер после того, как история была удалена, и применил мой патч к новой ветке. Теперь я хотел бы просто посмотреть, какие файлы существуют в новой ветке, которых нет в HEAD главной ветки. На данный момент я просто хочу имена файлов, независимо от содержимого, и только для файлов, которые существуют в новой ветви и не существуют в HEAD мастера.

1 ответ

Решение

Вы можете использовать git diff-tree для достижения желаемого

использование -r рекурсивно спускаться через поддерево и--diff-filter ограничить вывод только определенными типами различий (например, delete =D)

git diff-tree -r --diff-filter=D branchA branchB

Другие вопросы по тегам