ver remota ramas rama example crear comandos cambiar git merge settings gitlab

remota - Cómo cambiar la rama de destino predeterminada para fusiones en Gitlab



git rebase (4)

Estamos usando Gitlab 8.10.1 con muchos grupos y proyectos. Muchos de los proyectos son horquillas de otros proyectos. Nuestro problema es que cada vez que alguien abre una solicitud de combinación para un proyecto, la rama objetivo predeterminada NO es la rama predeterminada del proyecto, sino de otro proyecto muy específico. ¿Hay alguna manera de anular esta configuración de alguna manera? Solo para dejarlo claro, sé cómo establecer la rama predeterminada de un proyecto y esas configuraciones parecen ser correctas, sin embargo, gitlab no parece usarlas al crear solicitudes de combinación. Este problema es muy molesto y ha dado lugar a situaciones extrañas cuando las personas no prestaron atención y realizaron solicitudes de fusión con un "maestro" completamente diferente como objetivo.


A partir de la versión 11.5.3 la configuración cambió un poco. De docs.gitlab.com :

Cuando creas un nuevo proyecto, GitLab establece el maestro como la rama predeterminada para tu proyecto. Puede elegir otra rama para que sea la opción predeterminada de su proyecto en Configuración> Repositorio de su proyecto.


El destino predeterminado de MR depende de si el repositorio es o no un fork de GitLab .

tenedores

Si el repositorio es una bifurcación de GitLab , entonces el objetivo predeterminado de MR será la rama predeterminada del repositorio ascendente. Esta relación se puede eliminar a través de la opción "Eliminar relación de bifurcación" en la página de configuración del Proyecto, después de lo cual el objetivo predeterminado de MR se determinará como normal para un repositorio que no sea de bifurcación (descrito a continuación).

Al momento de escribir, no es posible anular el objetivo predeterminado de MR sin eliminar la relación de bifurcación, pero esa funcionalidad se ha solicitado en el número #18550 gitlab-ce.

Non-Forks

Si el repositorio no tiene una relación de bifurcación, entonces la configuración de Rama predeterminada en la página de configuración del Proyecto establece (1) el objetivo de MR predeterminado y (2) la referencia HEAD del repositorio en el servidor GitLab (que determina la bifurcación que está verificada) cuando se clona el repositorio). Tenga en cuenta que, debido a un error / peculiaridad en git , pueden producirse problemas si una rama que una vez fue la rama predeterminada se elimina posteriormente de GitLab.

Al momento de escribir, no es posible cambiar el objetivo predeterminado de MR independientemente de la rama predeterminada, pero esta funcionalidad se ha solicitado en los problemas de gitlab-ce #31546 / #13949 .


Encontramos la fuente de este comportamiento, se debe a la relación entre los proyectos, ya que un proyecto se bifurcó en gitlab del otro. Al eliminar la relación entre la fuente y la bifurcación, la rama predeterminada para las combinaciones es la rama predeterminada del proyecto en sí. En este momento, esta es nuestra solución para esta situación, ya que podemos vivir con las implicaciones de la eliminación de la relación de la fuente <-> fork.


necesita maestro。 Luego Configuración del proyecto --- Rama predeterminada --- guardar cambio

¡Disfrutar!