¿Cómo obtengo el logging de Git solo para una twig específica?

Asumiendo el siguiente historial de Git:

Branch1 B---C-------F---G / \ \ Master A-------D---E-------H 

Hacer un maestro de logging git da las inputs de logging en el siguiente order ABCDEFGH. – pero estoy interesado en la historia de maestro solamente (es decir, ADEH )

¿Cómo puedo "deshacerme" de las inputs de logging no deseadas de Branch1 ? Intenté muchas opciones para git log , pero no encuentro nada apropiado …


Esto lleva a algo más que no entiendo en este context:

Mirando el historial de logging dado por el maestro de logging de git muestra cómo evolucionó mi maestro de twig ( ABCDEFGH ).

Pero haciendo un checkout de git HEAD ~ 1 (suponiendo que master = HEAD) me da E (Evolution HEAD ~ 3 : AHEAD ~ 2 : DHEAD ~ 1 : EHEAD : H -> ADEH )

Esto es lo que no entiendo: el antepasado de H que mira git log es G , mientras que el antecesor de H que mira git checkout es E.

No entiendo esto – ¿Cuál es el antecesor de H : G o E ? …


Conclusión : Lo que me gustaría tener son inputs de logging git de HEAD a HEAD ~ n solamente (por ejemplo, arriba n = 1 … 3). ¿Cómo se puede lograr esto? ¿Es posible?

Lo que estás buscando es

 git log --first-parent 

Por qué se llama esa opción --first-parent responde a su pregunta

No entiendo esto – ¿Cuál es el antecesor de H: G o E?

La respuesta es: ambos . E es el primer padre , pero G es el segundo padre , porque H es un compromiso de fusión. Un commit de fusión es aquel que tiene más de un padre.