Cómo volver a establecer una base de combinación, pero mantener el compromiso de fusión

Mi equipo y yo estamos desarrollando una function usando una twig remota ( origin/our_feature_branch ) fuera de la pista principal ( origin/dev ). Gerrit se usa para revisión, etc.

El levantamiento de la twig remota se realiza con git merge origin/dev seguido de la resolución de conflictos, commiting y git push origin HEAD:refs/for/our_feature_branch .

Gerrit impone una regla que dice que solo se puede presionar un compromiso a la vez. No puedo hacer nada al respecto

Digamos que empiezo a trabajar en hacer un levantamiento:

 git fetch git checkout -b uplift origin/our_feature_branch git merge origin/dev 

Pero aquí me quedo atascado arreglando algunos conflictos y las testings de regresión tardan un poco en ejecutarse, y algunos miembros del equipo envían otro compromiso a la twig de características en Gerrit. Este compromiso ahora está en la parte superior de la confirmación base para mi elevación "en curso".

¿Qué hago ahora?

Si rebase mi fusión de confirmación en la twig de características, elimino la fusión y agregué todas las confirmaciones fusionadas desde el origin/dev en la parte superior, no una opción. Si me fusiono con la twig de características, terminaré fusionándome en una combinación y terminaré teniendo que enviar dos confirmaciones a Gerrit, lo que tampoco está permitido.

¿Hay alguna solución para esto o tengo que volver a hacer la fusión y tratar de recordarles a todos que tenemos una parada de entrega la próxima vez que empiece a trabajar en un levantamiento?

Como se sugiere en los comentarios, git rebase -p resuelve el problema

Comience a crear la confirmación de elevación:

 git fetch git checkout -b uplift origin/our_feature_branch git merge origin/dev git commit 

Algo se envía a origin/our_feature_branch en Gerrit.

Haga lo siguiente para volver a establecer la base de la fusión y mantener la fusión:

 git fetch git rebase -p origin/our_feature_branch 

Ahora la confirmación de fusión se puede enviar a Gerrit y se basará en la última origin/our_feature_branch y el mismo origin/dev que antes de la database de git rebase -p