Подтвердить что ты не робот

Есть ли способ увидеть все измененные файлы на ветке в Git?

Я apolagise, если это не очень ясно, но в Git, есть ли способ увидеть все измененные файлы в ветке, только по имени. Насколько я знаю, я могу использовать журнал git для просмотра файлов, которые были изменены в одном коммите, но я хочу видеть все файлы, которые были изменены с момента создания ветки, за несколько коммитов.

Существует git diff, но также перечислены измененные файлы в ветке, по сравнению с которой я не хочу видеть. Мне нужна команда, которая говорит: "Покажите мне имена файлов для всех измененных файлов в этой ветке".

Большое спасибо

4b9b3361

Ответ 1

Предположим, что вы находитесь на ветке foo, и вас интересуют, какие файлы изменились с момента, когда он отклонился от master, вы можете просто сделать:

git diff --name-only master...

(Обратите внимание на три точки.) Если вы не foo, вы можете использовать полную форму:

git diff --name-only master...foo

Я сделал некоторые графики, которые объясняют двухточечные и трехточечные обозначения, а их различия между их значением в git rev-list и git log - вы можете найти их в this ответить.

Ответ 2

Не знаю, что есть что-то, что делает именно то, что вы хотите, основываясь только на вашей текущей ветке, но если вы знаете идентификатор фиксации, являющийся родителем вашего ветки, вы можете сделать:

git diff --name-only <commit id of branch point>..HEAD

Ответ 3

Предполагая, что вы проверили ветку, над которой работаете, и хотите сравнить ее с мастером:

git diff --name-only master

Ответ 4

Я использую эту команду, чтобы узнать список N файлов, измененных между двумя версиями, здесь N равно 50

git log  --pretty=format: --name-only <SourceBranch>...<TargetBranch> | sort | uniq -c | sort -rg | head -50