Git rebase --preserve-merges falla

Tengo un árbol de confirmación (grande) que contiene varias confirmaciones de fusión que quiero volver a asignar a otra confirmación. Hacer un rebase normal hace que git me pida que resuelva conflictos de fusión. No quería revisar cada fusión, porque esto sería mucho trabajo. Después de conocer la opción --preserve-merges, que se explica con claridadaquí, Pensé que encontré la herramienta perfecta para esta tarea. Sin embargo, parece que no puedo hacer que funcione correctamente. He creado un ejemplo de juguete que demuestra el problema.

Comenzando desde una carpeta vacía, primero creamos una rama con una combinación y otra rama en la que volveremos a armar.

A---B--
\      \
 ---C---D
 \
  ---E

DóndeMaestro se refiere aB, rama se refiere aD yadios rama se refiere aE.

git init
echo Hello > Hello.txt
git add Hello.txt
git commit -m "Create Hello.txt (commit A)"
git tag start

echo World! >> Hello.txt
git commit -am "Change to Hello World (commit B)"

git checkout start
git checkout -b branch
echo Dave >> Hello.txt
git commit -am "Change to Hello Dave (commit C)"

git merge master
echo Hello World, Dave! > Hello.txt
git add Hello.txt
git commit -m "Merge branch master into branch (commit D)"

git checkout start
git checkout -b goodbye-branch
echo Goodbye > Goodbye.txt
git add Goodbye.txt
git commit -m "Add Goodbye.txt (commit E)"

Hasta este punto, todo salió bien. Hubo un conflicto de fusión, pero lo resolvimos. Ahora tratamos de rebaserama sobreE para terminar con el siguiente árbol de confirmación:

A---E----B'
     \    \
      C'---D'

git checkout branch
git rebase -p goodbye-branch

Esto termina con el siguiente error:

Auto-merging Hello.txt
CONFLICT (content): Merge conflict in Hello.txt
Automatic merge failed; fix conflicts and then commit the result.
Error redoing merge f567809e2cc91244cc7fdac210e1771dc75e4d86

El archivo contiene el siguiente contenido:

Hello
<<<<<<< HEAD
Dave
=======
World!
>>>>>>> 0437403c97f33f229e41ec9584ce891a50052e48

¿Qué estoy haciendo mal? Espero que git pueda usar commitD para resolver el conflicto de fusión que encuentra al rebasar.

Estoy usando Git 1.9.4.msysgit.1, que es la versión más reciente en este momento.

Respuestas a la pregunta(1)

Su respuesta a la pregunta