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

Как получить diff для указанного пользователя между двумя датами из git?

Или, как использовать git команда whatchanged для перечисления для определенного пользователя? Есть ли какой-либо скрипт? (встроенная команда git)

4b9b3361

Ответ 1

Я считаю, что нет такого способа получить данные о значении разного типа.

На сегодняшний день вы можете сделать следующее:

git log --since "OCT 4 2011" --until "OCT 11 2011" --pretty=format:"%H"

И затем git diff между первой и последней версиями. Если список ревизий слишком длинный, используйте приведенные выше git log ... с | head -1 и | tail -1, чтобы получить первую и последнюю ревизии.

Обратите внимание, что указанный выше git журнал вернет версии точно между заданными датами, то есть ревизии для OCT 5, OCT 6,..., OCT 10.

Ответ 2

Это возможно, и с критериями пользователя/коммиттера:

git log --after="2015-10-14" --before="2015-10-21" --grep="MB[FT][0-9-]*" --author="John\|Mary"

Это будет соответствовать всем

  • между этими датами
  • авторами, соответствующими именам John или Mary
  • где сообщение фиксации включает (например, номер билета Jira в форме) MBT или MBF плюс номерный код, который может включать - char.

Ответ 3

git log --since "MAY 1 2017" --until "MAY 31 2017" -p --author="Jack" > diffJackMay.patch