Список измененных файлов в git post-merge hook - PullRequest
5 голосов
/ 02 февраля 2011

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

Ответы [ 2 ]

7 голосов
/ 23 сентября 2013

Также можно использовать ярлыки ORIG_HEAD и HEAD :

git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD

(см. Также: Список всех файлов для фиксации в Git )

3 голосов
/ 02 февраля 2011

Я думаю, что вашей лучшей ставкой в ​​этот момент будут рефлоги. Если вы только что перешли вперед, первая строка журнала HEAD будет выглядеть так:

63e21fb HEAD@{0}: merge origin/master: Fast-forward

Таким образом, вы сможете печатать только первую строку (git reflog -n 1), проверьте, соответствует ли она merge .*: Fast-forward$, и если да, выполните git diff HEAD@{1} HEAD. (Вы действительно хотите взглянуть на журналы, чтобы убедиться, что произошло ускоренное слияние, возможно, если вы не уверены в своем сценарии, что это единственная возможность сейчас.)

...