git-svn: ¿por qué las asignaciones de otras twigs se mezclan con las confirmaciones de troncales en el maestro?

Estoy rastreando un repository svn usando git. Se realizó una combinación el 2014-01-09 (produciendo el compromiso A ) y otra el 2014-02-12 (produciendo el compromiso B ). Cuando git checkout master; git log git checkout master; git log , veo las confirmaciones para las fusiones, pero también veo, por ejemplo, una confirmación el 2014-02-04 ( C ) contra una sucursal (que se fusionó como parte de B ).

¿Por qué una confirmación hecha contra una twig aparece cuando se ejecuta git log on trunk?

Descubrí esto al intentar rebobinar mi maestro y mis twigs a una date particular en el time para tratar de ejecutar la fusión B nuevo para ver qué conflictos existen. Había asumido que podría get el git checkout master; git reset --hard B^; git merge branch; git checkout master; git reset --hard B^; git merge branch; , pero eso no funcionó, luego vi estos commits extra de las twigs en mi tronco y me confundí.

¡Cualquier ayuda que pueda ofrecer sobre el tema será muy apreciada!

Si C es parte de una twig que se fusionó en el master para producir B , entonces un master git log de git log includeá todas las confirmaciones que se encontraban en la twig, incluida C Este es el comportamiento esperado, y es necesario para comprender todos los compromisos individuales que son parte del master . Puede haber un indicador para git log para ocultar confirmaciones que también aparecen en diferentes twigs, pero no puedo encontrar ese mecanismo.