Какие символы являются незаконными в имени ветки?
Какие символы являются незаконными в имени ветки?
Ответ 1
Правила именования для refname:
Git устанавливает следующие правила именования ссылок:
Они могут включать косую черту
/
для иерархической (директории) группировки, но ни один разделенный слешами компонент не может начинаться с точки.
или конец последовательности.lock
.Они должны содержать хотя бы один
/
. Это обеспечивает наличие категории, такой какheads/
,tags/
и т.д., Но фактические имена не ограничены. Если используется параметр--allow-onelevel
, это правило отменяется.У них не может быть двух последовательных точек
..
нигде.Они не могут содержать управляющие символы ASCII (т.е. Байты, значения которых меньше
\040
или\177
DEL
), пробел, тильда~
, символ^
или двоеточие:
где угодно.У них не может быть знака вопроса
?
, звездочка*
или открытая скобка[
где угодно. Смотрите ниже параметр--refspec-pattern
для исключения из этого правила.Они не могут начинаться или заканчиваться косой чертой
/
или содержать несколько последовательных слешей (см.--normalize
ниже для исключения из этого правила)Они не могут заканчиваться точкой
..
Они не могут содержать последовательность
@{
.Они не могут быть одним символом
@
.Они не могут содержать
\
.
Кроме того, дополнительное правило для имени ветки:
- Они не могут начинаться с тире
-
Благодаря Jakub Narębski, страница руководства для git check-ref-format
содержит больше деталей.