git diff исключает слияние - фиксирует - PullRequest
1 голос
/ 18 октября 2019

Я пытаюсь перечислить все измененные файлы внутри ветви FEATURE-1, игнорируя при этом фиксацию слияния в ветку DEV, из которой он был изначально создан с использованием git diff. Таким образом, график выглядит так:

         x---y---z---w---feature
        /   /   /
---a---b---c-+-d-+-e---dev

и когда я выполняю y коммит и набираю

git diff --name-only dev...feature

, я получаю право, что мне нужно. Но после слияния ветки Feature в dev, представьте, что мы находимся на w, используя эту команду, я получаю пустой выводПоэтому мне нужно как-то исключить все коммиты слияния из git diff. Есть ли способ исключить такие коммиты? заранее спасибо.

Я использую git версии 2.21.0.windows.1 Windows 10, для локального проекта

1 Ответ

0 голосов
/ 18 октября 2019

устаревший ответ (см. Комментарии)

Просто укажите ссылку на коммит до слияния вместо dev

git diff --name-only <commit e>...feature

(если коммит слияния является последнимодин на dev, вы можете просто использовать HEAD^ вместо первого поиска хэша в журнале ветки)


Редактировать после комментариев:

Кажется, ваш график больше похож на это:

      X---Y---Z <<< feature
     /     \   \ 
A---B-------C---D---E <<< dev
...