¿Cómo get diff para el usuario especificado entre dos dates de git?

O bien, ¿cómo usar el command git whatchanged para listr commits para el usuario especificado? ¿Hay alguna manera sin guiones? (command integrado de git)

Creo que no hay forma de get un diff solo conociendo las dates.

A partir de hoy, puede hacer lo siguiente:

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

Y luego git diff entre la primera y la última revisión. Si la list de revisión es demasiado larga, use el git log ... anterior git log ... con | head -1 | head -1 y | tail -1 | tail -1 para get la primera y la última revisión.

Tenga en count que el logging de git anterior devolverá las revisiones exactamente entre dates determinadas, es decir, revisiones para OCT 5, OCT 6, …, OCT 10.

Esto es posible, y con los criterios de usuario / comitente:

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

Esto coincidirá con cualquier cosa

  • entre esas dates
  • por autores que coincidan con los nombres John o Mary
  • donde el post de compromiso incluye (por ejemplo, un número de ticket Jira en forma de) MBT o MBF más un código numérico que puede include un - char.
 git log --since "MAY 1 2017" --until "MAY 31 2017" -p --author="Jack" > diffJackMay.patch