¿Cómo actualizar un borrador de gerrit en HEAD: refs / drafts / master?

He enviado un borrador a gerrit a través de

git push ssh://myuser@gerrit.xxx.xx:29418/myproject HEAD:refs/drafts/master 

pero necesito actualizarlo a mitad de la revisión.

Leí https://review.openstack.org/Documentation/intro-quick.html#_reworking_the_change, pero creo que ese consejo no apunta específicamente a los borradores.

Entonces, ¿puedo modificar mi confirmación y luego presionar usando el mismo command que antes? ¿Y cómo se verán los revisores?

 git push ssh://myuser@gerrit.xxx.xx:29418/myproject HEAD:refs/drafts/master 

Sí, el command mencionado anteriormente aplicará un nuevo parche al borrador.

La pregunta de seguimiento es un poco confusa. El caso de uso del borrador es que desea cargar su cambio pero no hacerlo público, por ejemplo, porque no desea que las personas comiencen a revisarlo todavía. Dependiendo de la política local, es posible que los revisores se agreguen explícitamente o selectn cambios abiertos y se agreguen a sí mismos como revisores. Pero la function de borrador impide esto. Si desea que alguien revise su cambio de borrador, puede agregarlo explícitamente como un crítico.

Consulte aquí para más detalles

Como esta fue una experiencia dolorosa, aquí están mis notas; espero que sean útiles …

Primer problema: la twig se había movido desde que empujé mi calado. Tuve que combinar los cambios, pero no pude enviar nuevos trabajos a refs/drafts/master ya que incluían una fusión …

  ! [remote rejected] HEAD -> refs/drafts/master (you are not allowed to upload merges) 

Así que probé consejos de: https://wiki.opendaylight.org/view/GIT_Cheat_Sheet pero obtuve el mismo error. Aprendí que normalmente puedes usar el button de rebase en la página web de gerrit pero no en mi caso ya que tuve un conflicto. Tuve que volver a establecer la base manualmente como se describe en https://gerrit-review.googlesource.com/Documentation/intro-user.html#rebase . Aunque esa página se refiere a HEAD:refs/for/master , acabo de hacer lo mismo a exception de HEAD:refs/drafts/master y rebase funcionó.

A continuación, tuve que pagar el cambio rebasado (como un solo pago y envío dos juegos de parches) de Gerrit en mi sucursal local. Luego realicé mi nuevo cambio, asegurándome de usar el Change-Id: correcto Change-Id: en el post de confirmación, y al presionar nuevamente, esto también falló (el post era algo así como (you are not allowed to multiple drafts with same Change-Id:) . Arreglo de que tenía que hacer git squash mis commits, es decir, el cambio descargado + mis ediciones. Empujé esto y todo está bien. Aparece en la página web gerrit como 3 sets de parches.

Eventualmente presioné el button publicar y eso lo presioné, supongo, a HEAD:refs/for/master . Es importante recordar actualizar el post de compromiso combinado con el text que desea que aparezca en el historial de git (de ninguna manera fácil de editar después de la publicación)

También vea https://gerrit-review.googlesource.com/Documentation/intro-user.html#submit