как найти список файлов, добавленных в ветку? - PullRequest
19 голосов
/ 23 января 2012

Как мне перечислить все файлы, которые я зафиксировал в определенной ветке? Я поместил около 40+ файлов в ветку, и мне нужно найти имена файлов, потому что я пытаюсь что-то отладить, что трудно сделать, когда я не помню имен файлов.

git log дает мне только длинный список коммитов, но не фактические файлы.

Ответы [ 9 ]

19 голосов
/ 23 января 2012

Вы пробовали git ls-tree?

git ls-tree --name-only -r <branch_name> 

- только имя дает только имена файлов.-r возвращается в подкаталоги.

Если вы хотите, чтобы имя подкаталога было указано перед тем, как возвращаться в него, добавьте -t в список аргументов.

13 голосов
/ 23 января 2012

Если ваша ветвь была получена из master, вы можете использовать эту команду для просмотра списка всех новых файлов, которые были добавлены после ветвления:

git diff master...new-branch --name-status --diff-filter=A

Доступны фильтры для --diff-filter:

Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R)
11 голосов
/ 12 сентября 2013

git log --name-only работал для меня.

4 голосов
/ 23 января 2012

Команда git ls-files выводит список всех файлов, которые существуют в последнем коммите в текущей ветви.

Или вы можете использовать git diff --name-only, чтобы отобразить список файловкоторые отличаются между любыми двумя произвольными коммитами.

3 голосов
/ 23 января 2012

git log --name-status выдаст имена и статус измененных файлов в каждом коммите

1 голос
/ 03 октября 2017

git log - только для имени Работает для меня.

0 голосов
/ 19 июля 2018
git diff development...crmq-2405 --name-status --diff-filter=A

выведет список всех файлов, которые были добавлены в новую ветку, которых нет в почте - в этом случае development основная ветка.

git diff development...crmq-2405 --name-status

Этот вариант покажет все файлы вновая ветвь

Общая форма:

git diff main_branch...new_branch --name-status

и да, порядок имеет значение.

0 голосов
/ 29 декабря 2014

Это может быть полезно, если вы хотите знать все отдельные файлы, которые были изменены после ветвления:

git log --name-status develop ... branchname |grep -E "^ [AMD] \ s" |sort -u

И этот вариант перечислит подмножество их, которые вы изменили:

git log --name-status development ...branchname --author = |grep -E "^ [AMD] \ s" |сортировать -u

0 голосов
/ 23 января 2012

попробуйте использовать smartgit .это графический клиент для git.он имеет очень полезный интерфейс и бесплатен для некоммерческого использования.

...