как я определяю файлы/каталоги, которые были добавлены или удалены в фиксации мерзавца?

Я должен записать сценарий, который инкрементно отслеживает файлы и каталоги, добавленные и удаленные от мерзавца repo.

Я попытался использовать:

git log -n1 --pretty="format:" --name-only

Но это только говорит мне, какие файлы фиксировались. Это не указывает, было ли это добавлено или удалено.

Какие-либо идеи?

18
задан smarber 6 July 2018 в 08:11
поделиться

2 ответа

Вариант, который вы ищете, это --name-status. Как и -name-only, это на самом деле опция git-diff; git-log принимает их, чтобы определить, как он будет отображать патчи.

git log -n 1 --pretty=oneline --name-status

Или эквивалентно (за вычетом заголовка журнала):

git diff --name-status HEAD^ HEAD

Как указывает isbadawi, вы также можете использовать git-whatchanged. Это в значительной степени git-log с определенным выводом diff:

git whatchanged -n 1

Вам может понравиться версия --name-status лучше, поскольку она не показывает все хэши больших двоичных объектов, а только читаемые человеком статусы.

31
ответ дан 30 November 2019 в 07:28
поделиться
5
ответ дан 30 November 2019 в 07:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: