Comparando los cambios en los commits con el file actual por Git

¿Cómo puede mostrar las diferencias de un file en los últimos 5 commits al file no confirmado actual por Git-show?

Hice un cambio en mi file que rompe mi código. Sin embargo, no sé dónde está el cambio.

Me gustaría comparar los files no confirmados actuales con la confirmación reciente (HEAD), con la confirmación anterior (^ HEAD) y al less 3 commits más profundos.

Sin embargo, no sé cómo puedes hacerlo de manera eficiente.

Al tratar de ver los cambios de los cinco últimos commits de un file en el file actual en la twig dada, ejecuté sin éxito

git show next~5:handle_questions.php 

Aquí está mi hoja de trucos:

 # uncommited file to HEAD git diff <path> # uncommited file to before last commit git diff HEAD^ -- <path> #last commit to before last commit git diff HEAD^ HEAD -- <path> #difference between HEAD and n-th grandparent git diff HEAD~n HEAD -- <path> #Another cool feature is whatchanged command git whatchanged -- <path> 

Puedes usar git bisect para rastrear la confirmación que introdujo un error.

Para ver la diferencia entre handle_questions.php en el directory de trabajo y en el repository 5 commits back, use:

 $ git diff HEAD ~ 5 handle_questions.php

Si conoce el file en el que se realizó el cambio, también puede usar git blame <path> – esto le dará una historia de cada línea de código en el siguiente formatting:

 SHA (Author Timestamp Line Number) code