¿Cuál es el flujo de trabajo correcto al aplicar una actualización a un parche git en la historia?

He enviado una serie de parches a un server de Gerrit para su revisión y todos están en el mismo proyecto secuencialmente en el time. Ahora alguien más ha enviado una actualización a uno de los primeros parches en la secuencia y quiero bajarlo de gerrit para probarlo. ¿Cuáles son los pasos correctos para hacer esto? Sé que podría reiniciarme, volveré al momento justo antes del parche y luego, ya sea de forma selectiva o por repo, downloadé cada uno de los parches uno por uno. Dado que es solo un parche que realmente ha cambiado, entonces me parece un poco exagerado. Hay una mejor manera de hacerlo?

Encuentra el hash de confirmación del commit al que alguien hizo una actualización en tu historial, y finaliza la compra con ese hash, por ejemplo

$ git checkout 1358ffb # use your own hash here 

luego crea una twig allí y agrégalo a ella

 $ git checkout -b new_branch 

Como alguien sobrescribió su compromiso con otro, debemos replacelo. Restablecer al padre de la confirmación.

 $ git reset --hard HEAD^ 

Ahora puedes seleccionar la 'confirmación de actualización' de Gerrit aquí. Tenga en count que este command es solo un ejemplo, tendrá que usar sus propios detalles y url, etc. Básicamente solo copie y pegue la URL de selección de cereza de la interfaz de usuario web de gerrit.

 $ git fetch ssh://kimusan@example.com:29418/project-name refs/changes/04/104/1 && git cherry-pick FETCH_HEAD 

Ahora tenemos que volver a establecer la base de los otros commits en esto. Checkout master (o lo que sea que esté en la parte superior del tree) y volver a establecer la base en new_branch

 $ git checkout master $ git rebase new_branch 

Git ahora colocará todas las confirmaciones que hayas hecho después de la que acabas de actualizar, de nuevo en la parte superior. Puedes eliminar new_branch ahora si quieres

 $ git branch -d new_branch