Risposte:
Regole di denominazione per refname:
Git impone le seguenti regole su come vengono nominati i riferimenti:
Possono includere barra
/per il raggruppamento gerarchico (di directory), ma nessun componente separato da barra può iniziare con un punto.o terminare con la sequenza.lock.Devono contenere almeno uno
/. Ciò impone la presenza di una categoria comeheads/,tags/ecc. Ma i nomi effettivi non sono limitati. Se--allow-onelevelviene utilizzata l' opzione, questa regola viene revocata.Non possono avere due punti consecutivi
..ovunque.Non possono avere caratteri di controllo ASCII (ovvero byte i cui valori sono inferiori a
\040, o\177DEL), spazio, tilde~, cursore^o due punti:ovunque.Non possono avere punti interrogativi
?, asterisco*o parentesi aperta da[nessuna parte. Vedere l'--refspec-patternopzione di seguito per un'eccezione a questa regola.Non possono iniziare o terminare con una barra
/o contenere più barre consecutive (vedere l'--normalizeopzione di seguito per un'eccezione a questa regola)Non possono finire con un punto
..Non possono contenere una sequenza
@{.Non possono essere il singolo personaggio
@.Non possono contenere a
\.
Inoltre, regola aggiuntiva per il nome del ramo:
- Non possono iniziare con un trattino
-
Grazie a Jakub Narębski , la pagina man di git check-ref-formatha più dettagli.
/". Spiega per favore? Nessuno dei miei rami ha un /nel nome.
/ha heads/anteposto ad esso "automaticamente". In realtà: senza un /, non è ancora chiaro se si tratta di un ramo o di un tag o qualcos'altro ...