git rebase issue reordering

Tengo un problema al volver a basar git commits. El problema es:

pick A pick B <- mine pick C pick D pick E <- mine pick F <- mine 

Quiero aplastar todos mis compromisos en uno. Planeé hacer algo como:

 pick A pick C pick D pick B <- mine squash E <- mine squash F <- mine 

Pero eso no funcionó porque si ejecutara esta git rebase , el commmit A, C y D también serían míos. Si simplemente borro las líneas de A a D, solo dejo:

 pick B <- mine squash E <- mine squash F <- mine 

las confirmaciones A, C y D se eliminarán. ¿Cómo puedo manejar esto?

Gracias

Como se menciona en ¿Cómo puedo volver a establecer la base de una confirmación realizada por otro autor sin agregarme como el autor? , podría intentar cambiar las variables GIT_COMMITTER_NAME / EMAIL , pero eso se aplicaría a todas las confirmaciones rebasadas.

Otro enfoque es realizar su rebase, luego completarla con una git filter-branch para cambiar solo A , C y D

 git filter-branch --commit-filter \ 'export GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; \ export GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; \ export GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; \ git commit-tree "$@"' -- D..HEAD