Git & Version Control

Validar nombres de ramas Gitcon posiciones de error

Comprueba una rama, una referencia o un ID de objeto. Distingue los errores de sintaxis de los consejos de nomenclatura.

Validar nombres de ramas Git

Nombre o hash de entrada

Informe de comprobación

Introduce un nombre o hash.

La comprobación ocurre en el navegador, sin enviar el texto ni acceder a un repositorio.

Opciones de comprobación

Un valor, hasta 4.096 unidades UTF-16. Diagnósticos mostrados de 50 en 50.

Introduce un nombre o hash.

Validar nombres de ramas Git ayuda cuando el terminal rechaza un nombre sin explicar dónde está el problema. Un espacio pegado, un punto al principio de un componente o el sufijo .lock pueden pasar inadvertidos al leer el texto.

Primero decide qué representa la entrada. main sirve como nombre de rama, pero una referencia de un solo nivel requiere permiso explícito. Una cadena hexadecimal de cuarenta caracteres también cambia de significado según el algoritmo que selecciones.

Validar nombres de ramas Git conservando el original

Encontrar la causa antes de cambiar el nombre

Validar nombres de ramas Git permite revisar cada posición problemática sin modificar la entrada. La sugerencia ASCII aparece por separado. Así puedes decidir si perder mayúsculas, acentos u otros caracteres altera el sentido que tenía el nombre original.

Un fragmento de nombre marcado como incorrecto se conecta con una tarjeta de diagnóstico independiente

Mostrar una parte sin certificar su unicidad

Un hash corto facilita la lectura de una nota de versión, pero otros objetos pueden compartir su comienzo. El informe distingue la forma completa de la abreviada y solo extrae caracteres existentes; no completa un sufijo desconocido.

El inicio de una fila larga se copia a una fila corta y el estado del repositorio queda sin resolver

Elige el contexto antes de interpretar el resultado

01

Comparar ramas y referencias

Cambiar de modo mantiene el texto. Prueba main como rama y refs/heads/main como referencia. Permitir un solo nivel elimina únicamente la obligación de incluir una barra en el modo de referencia.

  • No permite un punto final, barras consecutivas ni una referencia formada solo por @.
02

Seleccionar el algoritmo del ID

SHA-1 usa 40 caracteres para un ID completo y SHA-256 usa 64. Si permites abreviaturas, se aceptan de 4 caracteres hasta uno menos que la longitud completa como formato abreviado.

  • La vista inicial de siete caracteres no rellena una entrada que solo contenga cuatro.
03

Revisar el informe actualizado

La comprobación automática espera 350 ms después de editar. Al desactivarla aparece el botón manual; también puedes usar Ctrl/Cmd + Enter. Pulsa un diagnóstico para ir a su línea y columna.

  • Los cambios bloquean la exportación de resultados anteriores. Un informe terminado con errores sí puede guardarse para revisión.

Reglas de nombres y formatos de objetos

Un nombre de rama válido en su contexto

Las ramas añaden restricciones como HEAD y el guion inicial. Las referencias Git pueden admitir un solo nivel de forma explícita. La comprobación sigue las reglas literales de git check-ref-format, sin resolver el historial de cambios de rama.

Localización de caracteres especiales

Se detectan controles ASCII, espacios, puntuación prohibida y secuencias como .. y @{. Cada componente se revisa para encontrar un punto inicial o el final .lock. Las líneas y columnas empiezan en 1; columnas y offsets JSON se cuentan en unidades UTF-16.

Sugerencias que puedes evaluar aparte

El generador usa letras ASCII minúsculas, cifras y ._-/; sustituye el resto por guiones, corrige estructuras prohibidas y vuelve a comprobar el resultado. No translitera otros alfabetos. Si no quedan letras ni cifras utilizables, propone branch.

Clasificación explícita de hashes

El informe registra algoritmo, longitud, forma completa o abreviada y prefijo mostrado. Conserva las letras hexadecimales mayúsculas. Cuarenta caracteres son una abreviatura en SHA-256. No calcula hashes de archivos ni convierte identificadores de un algoritmo a otro.

Qué no puede saberse sin el repositorio

Existencia y tipo de objeto desconocidos
La sintaxis no demuestra que exista un commit, que un prefijo sea único o que puedas crear una rama. Las colisiones entre foo y foo/bar, los permisos, las ramas protegidas y los límites del sistema de archivos se comprueban en el entorno real.
Una sola entrada sin limpieza silenciosa
No se eliminan espacios al principio o al final. Los saltos de línea se señalan como caracteres inválidos, no como separadores de un lote. HEAD~1, main^, @{-1} y los refspec con comodines quedan fuera del alcance. No se importan archivos ni URL.
Consejos y políticas separados de Git
Algunos caracteres aceptados por Git tienen significado especial para el intérprete de comandos. Los consejos ASCII y las restricciones de GitHub para nombres que comienzan por refs/ o tienen cuarenta cifras hexadecimales no cambian el veredicto sintáctico. Tampoco se aplican expresiones regulares del equipo.
Un límite propio de procesamiento
La entrada admite hasta 4.096 unidades de código UTF-16. No es un límite universal de longitud de Git. La pantalla muestra los diagnósticos de 50 en 50, pero el JSON copiado o descargado incluye todo el informe finalizado, incluso sus errores.
Revisar las sustituciones antes de aplicarlas
Los ejemplos y el borrado presentan el texto de destino y el recuento de caracteres anterior y posterior. Una acción de deshacer restaura entrada, opciones y estado del informe. La sugerencia se ofrece solo para copiar y no garantiza el mismo significado. Si no cabe con seguridad, no se trunca para aparentar validez.

Validar nombres de ramas Git: preguntas frecuentes

¿Cómo compruebo si un nombre de rama Git es válido?

Usa el modo de rama para un nombre literal. En tu terminal puedes ejecutar git check-ref-format --branch pasando el nombre como argumento bien protegido. main y master no están prohibidos por la sintaxis porque un equipo decida protegerlos. Un resultado válido tampoco garantiza que la creación vaya a completarse.

¿Qué caracteres no se permiten en un nombre de rama?

Git prohíbe controles ASCII, espacios, ~, ^, :, ?, *, [, y la barra inversa. También restringe secuencias y límites de componentes. En cambio, ] y $ no son automáticamente errores sintácticos. El intérprete de comandos puede exigir comillas u otra protección para manejarlos como texto literal.

¿Por qué los nombres de rama no pueden contener espacios?

El espacio ASCII está en la lista de caracteres prohibidos de Git. La regla evita ambigüedades al interpretar nombres en rutas y expresiones de revisión. Esta página señala su posición en vez de quitarlo a escondidas. La propuesta de un nombre con guiones se presenta como un valor independiente.

¿Cómo se determina la longitud de un hash corto de commit?

Git busca un prefijo único entre los objetos del repositorio. La longitud mínima solicitada es cuatro y el valor predeterminado depende de core.abbrev. Los siete caracteres de esta página son solo una preferencia visual. Al añadir objetos, una abreviatura antes suficiente puede dejar de ser única.

¿Cómo compruebo si existe un commit a partir de su SHA-1?

Debes consultar el repositorio correspondiente. Por ejemplo, git cat-file -e permite comprobar la existencia de una expresión de objeto adecuada; determinar si es un commit exige considerar el tipo. Tener una cadena hexadecimal de longitud correcta no demuestra que el objeto exista.

¿Te queda alguna duda?

Usa el resultado en el contexto correcto

Validar nombres de ramas Git explica las restricciones del texto. Comprueba después la existencia, unicidad y permisos en el repositorio donde se utilizará.