2012-07-24 17 views
10

Encontré que al hacer clic en "Submit Patch Set" en la interfaz web Gerrit, simplemente agregaba una confirmación a esa rama, o creaba un commit de fusión si otro compromiso fue enviado justo antes.Gerrit siempre rebase antes de enviar parche para evitar una fusión commit

ejemplo que crea 2 cometer: cometer el real y una combinación de cometer:

  1. usuario envía conjunto de parches Un dependiendo de cometer O
  2. Usuario envía conjunto de parches B dependiendo de cometer O
  3. Presentar Patch Set A
  4. Presentar Patch Set B -> Crea fusionar comprometerse entre O -> a y O -> B

Hay un "Reba SE Cambio" botón que es grande pero significa que enviar un parche establece todo el mundo siempre debe hacer:

  1. Haga clic Rebase Cambio
  2. Haga clic Presentar Cambio Conjunto

La única razón Veo que una fusión es útil para mantener las fechas de los commits (pero entiendo por qué es necesario sin una rebase).

¿No hay rebase automático o al menos un cheque para evitar generar una fusión no deseada?

+1

Esto * no * está relacionado con 'git config branch.autosetuprebase'. – Wernight

Respuesta

12

Sí. Cambie la Acción de envío para su (s) proyecto (s) a Cherry Pick. Esto hará más o menos lo mismo que rebasar cuando se presiona el botón Enviar. Mantendrá el historial limpio que está buscando sin compromisos de fusión al enviar cambios.

+1

¡Genial! Lo encontré en Admin> Proyectos> * MyProject *> General> ** Opciones de proyecto ** – Wernight

Cuestiones relacionadas