#git #git-diff
#мерзавец #git-разница
Вопрос:
как я могу перечислить вновь созданные (добавленные) файлы между двумя ветвями? Я могу перечислить все файлы, которые были изменены с помощью:
git diff --color --name-only branch1..branch2
Но это также содержит файлы, которые только что изменили свое содержимое, не обязательно новые файлы. Есть ли какая-нибудь команда git для этого, или я должен проверять каждую ветку и сравнивать файлы, например, с помощью bash? Спасибо.
Филип
Комментарии:
1. Обратите внимание, что обозначение A..B для
git diff
является удобной функцией (для copy’n’paste), поскольку diff работает с конечными точками, а не с диапазонами.A..B
это просто другое название дляA B
.
Ответ №1:
Вы можете использовать --diff-filter
опцию git diff:
git diff --color --name-only --diff-filter=A branch1 branch2
Ответ №2:
Просто замените --name-only
на --name-status
. Таким образом, git покажет, добавлен ли файл, удален или просто изменен.
Если вас интересуют только новые (= добавленные) файлы, вы можете просто grep для ^A
:
git diff --name-status branch1..branch2 | grep ^A
Ответ №3:
Используйте эту команду для проверки новых отслеживаемых / добавленных файлов
git diff --color --name-status staging | grep ^A