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-onelevel
viene 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\177
DEL
), spazio, tilde~
, cursore^
o due punti:
ovunque.Non possono avere punti interrogativi
?
, asterisco*
o parentesi aperta da[
nessuna parte. Vedere l'--refspec-pattern
opzione di seguito per un'eccezione a questa regola.Non possono iniziare o terminare con una barra
/
o contenere più barre consecutive (vedere l'--normalize
opzione 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-format
ha 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 ...