Git rebase una twig en el maestro falló, ¿cómo resolver?

He estado trabajando en una copy local de un repository de git remoto. Creé una twig en mi copy local, llamémosla 'my_branch'. Me he comprometido un par de veces en my_branch.

Recientemente presioné 'my_branch' a control remoto. Sin embargo, no sabía que alguien más había agregado una versión al maestro remoto. Entonces, lo fui a search a mi maestro local.

Entonces … para abreviar, mi repository local se ve así (estoy tratando de usar la convención de diagtwigs aquí ).

--C0--------------C7-- (local master) \ --C1-C2-C3-- (local my_branch) \ --C4-C5-C6-- (local sandbox_branch) 

Quiero que se vea así:

  --C0--------------C7-- (local master) \ --C1'-C2'-C3'-- (local my_branch) \ --C4'-C5'-C6'-- (local sandbox_branch) 

Intenté volver a establecer la base de my_branch en el maestro local, pero recibí este post de error (estoy usando una herramienta visual para git llamada GitX):

 Rebase Failed! There was an error rebasing HEAD with branch 'master'. command: git rebase refs/heads/master It seems that I cannot create a rebase-apply directory, and I wonder if you are in the middle of patch application or another rebase. If that is not the case, please rm -fr /my_project_directory/.git/rebase-apply and run me again. I am stopping in case you still have something valuable there. 

¿Qué estoy haciendo mal? ¿Cómo debería manejar esto? Si tuviera que hacer esto en la línea de command, ¿cuál es el command para llevarme al estado en el diagtwig de arriba?

ACTUALIZACIÓN 1

Por cierto, no estoy en medio de un parche de aplicación u otra rebase … al less no intencional. Después de descubrir que el control remoto se actualizó DESPUÉS de empujar, hice una búsqueda. ¿Podría eso haber hecho algo para que GitX piense que estoy en medio de un parche de aplicación u otra rebase?

También actualicé el diagtwig para ser más preciso. Hay una twig fuera de my_branch. No lo incluí en la pregunta original b / c. No pensé que importaría. Estoy incluyendo por si acaso …

ACTUALIZACIÓN 2

FYI … El tree maestro para 'local' y para 'remoto' se parece al diagtwig que dibujé, excepto que no tiene el sandbox_branch.

git rebase ha encontrado un .git/rebase-apply y asume que podrías estar en el medio de una rebase. Esto hubiera sucedido si hubo un conflicto durante una rebase previa y la rebase no se terminó; es decir, no ejecutó uno de git rebase --abort , git rebase --skip o git rebase --continue (el último después de resolver el conflicto).

De todos modos, no importa cómo terminaste en este estado si no crees que corriste git rebase en absoluto. Simplemente rm -fr /my_project_directory/.git/rebase-apply como sugiere la ayuda y usted debería poder hacer la rebase ahora.

Pero espera. Como dice que ya ha publicado su sucursal en el repository remoto, no debe intentar volver a establecer el maestro. De hecho, si su control remoto está configurado para denegar confirmaciones de avance rápido (lo que parece ser una mejor práctica generalmente recomendada), ni siquiera podrá enviar los cambios reestablecidos a su control remoto. En general, es una mala práctica intentar modificar una confirmación (que es lo que hace la base de git rebase ) después de haberla publicado en un control remoto.