Error al presionar cambios en GIT. Los nombres de referencia deben seguir las reglas de formato de referencia de git

9

Tengo un error al usar git en Sourcetree. Creé una rama local llamada sprints / Mycompany_sprint_1 (porque la quiero en una categoría) y luego hice varias selecciones de cereza a esta rama desde otra. Después de eso, intenté enviar todos los cambios en mi rama, pero recibo el siguiente error:

La rama remota '' (rama local = 'sprints / Mycompany_sprint-1') no es válida. Los nombres de referencia deben seguir las reglas de formato de referencia de git: https://www.kernel.org/pub/software/scm/git/docs/git-check-ref-format.html Completado con errores, ver arriba.

Pero si voy al enlace, estoy siguiendo (hasta donde vi) todas las reglas, porque mirando la primera regla:

Pueden incluir barra / para agrupamiento jerárquico (directorio), pero ningún componente separado por barra puede comenzar con un punto. o terminar con la secuencia .lock. Compruebo si el problema podría ser que la categoría de primavera ya existe, pero no es el caso.

¿Alguien puede decirme qué estoy haciendo mal, por favor? Tengo miedo de que no pueda ver el error aquí ...

Inazense
fuente

Respuestas:

55

Esto parece ser un error que afecta a SourceTree para Windows versión 3.3.4: https://jira.atlassian.com/browse/SRCTREEWIN-12593

Una solución alternativa hasta que se solucione el error es desmarcar y volver a marcar la casilla de verificación de la rama en el diálogo de inserción.

Mark Leong
fuente
3
¡Me alegro de no haber pasado demasiado tiempo investigando esto por mi cuenta antes de SOing it!
Greg Woods el
Fuxk este error ... desperdiciar mi vida
Broma Huang
Llámalo BugTree.
Broma Huang
2
4 años después y esto aún no se soluciona
Ben Sewards
1

El problema no es con el nombre de su sucursal local . El problema es con el nombre de la sucursal que le preguntaste al otro Git que usara.

Aquí está ese mensaje de error nuevamente, esta vez en fuente de ancho fijo para mayor claridad:

The Remote branch '' (Local branch = 'sprints/Mycompany_sprint-1') is invalid.

Elimine el comentario entre paréntesis, que es meramente informativo:

The Remote branch '' is invalid.

Tienes, de alguna manera; esto debería ser imposible: especificó un nombre de rama remoto que está completamente vacío. Ese no es un nombre de sucursal válido. Cómo lo especificó, no tengo idea, pero debe dejar de hacerlo.

torek
fuente
Maldición, no lo entendí al principio. Gracias por tu respuesta. Lo que pasa es que no estoy definiendo un nombre vacío, estoy usando el mismo ... no estoy seguro acerca de la falla. De todos modos, empujé a través de la consola y funciona correctamente
Inazense
Sí, la línea de comando no le permitirá proporcionar un nombre de destino vacío sin al menos trabajar en ello. Esto suena como un error de GUI.
torek
1

Según el 22 de noviembre de 2019, esto finalmente parece estar solucionado.

SourceTree 3.3.6 [22 November 2019]
  Changes
    Fixed new branches in the push dialog not setting the remote branch name
    Fixed the create patch screen allowing split view

Fuente: Notas de la versión de SourceTree

muetzenflo
fuente
Me temo que aún no se está arreglando. Probé con esa versión y otras más nuevas y sigue apareciendo a veces.
Inazense
0

Estaba presionando Release_Staging_2.0 para organizarme. Obtuve el mismo error ... Cuando cambié el nombre a Staging_2.0 en mi sucursal local, funcionó ... Todavía no encontré la razón exacta, pero puedes intentarlo.

saktiprasad swain
fuente