J'ai un message d'erreur lors de la création d'une balise contenant [
personnage:
fatal: '[' n'est pas un nom de balise valide.
Question: y a-t-il des règles pour les tags dans le git?
Vous pouvez vérifier si le nom est valide avec
git check-ref-format
Cette page contient les contraintes sur un nom valide. Cité de la page (peut-être obsolète à l'avenir):
Ils peuvent inclure une barre oblique
/
pour le regroupement hiérarchique (répertoire), mais aucun composant séparé par une barre oblique ne peut commencer par un point.
ou terminer par la séquence.lock
.Ils doivent contenir au moins un
/
. Cela renforce la présence d'une catégorie commeheads/
,tags/
etc. mais les noms réels ne sont pas limités. Si la--allow-onelevel
l'option est utilisée, cette règle est supprimée.Ils ne peuvent pas avoir deux points consécutifs
..
n'importe où.Ils ne peuvent pas avoir ASCII caractères de contrôle (c'est-à-dire octets dont les valeurs sont inférieures à\040 ou\177
DEL
), espace, tilde~
, caret^
ou deux points:
n'importe où.Ils ne peuvent pas avoir de point d'interrogation
?
, astérisque*
, ou ouvrir le support[
n'importe où. Voir le--refspec-pattern
option ci-dessous pour une exception à cette règle.Ils ne peuvent ni commencer ni se terminer par une barre oblique
/
ou contenir plusieurs barres obliques consécutives (voir--normalize
option ci-dessous pour une exception à cette règle)Ils ne peuvent pas se terminer par un point
.
.Ils ne peuvent pas contenir de séquence
@{
.Ils ne peuvent pas être le seul caractère
@
.Ils ne peuvent pas contenir un
\
.
Comme vous pouvez le voir, dans votre cas, vous avez violé la règle (5).
Vous pouvez utiliser le --normalize
flag pour normaliser les balises par rapport aux barres obliques (en supprimant les barres obliques de tête et consécutives):
git check-ref-format --normalize "tags/weird//tag"
Le tags/
partie des espèces que vous validez un tag
.
Après quelques discussions avec @NikosAlexandris, vous pouvez écrire la ligne suivante pour vérifier la balise <some-tag>
avec commentaires textuels:
git check-ref-format "tags/<some-tag>" && echo "Valid tag" || echo "Invalid tag"