Which characters are illegal within a branch name?

后端 未结 2 1041
感动是毒
感动是毒 2020-11-30 17:49

Which characters are illegal within a branch name?

相关标签:
2条回答
  • 2020-11-30 18:16

    Naming rules for refname:

    Git imposes the following rules on how references are named:

    1. They can include slash / for hierarchical (directory) grouping, but no slash-separated component can begin with a dot . or end with the sequence .lock.

    2. They must contain at least one /. This enforces the presence of a category like heads/, tags/ etc. but the actual names are not restricted. If the --allow-onelevel option is used, this rule is waived.

    3. They cannot have two consecutive dots .. anywhere.

    4. They cannot have ASCII control characters (i.e. bytes whose values are lower than \040, or \177 DEL), space, tilde ~, caret ^, or colon : anywhere.

    5. They cannot have question-mark ?, asterisk *, or open bracket [ anywhere. See the --refspec-pattern option below for an exception to this rule.

    6. They cannot begin or end with a slash / or contain multiple consecutive slashes (see the --normalize option below for an exception to this rule)

    7. They cannot end with a dot .

    8. They cannot contain a sequence @{.

    9. They cannot be the single character @.

    10. They cannot contain a \.

    On top of that, additional rule for branch name:

    1. They cannot start with a dash -

    Thanks to Jakub Narębski, the man page for git check-ref-format has more details.

    0 讨论(0)
  • 2020-11-30 18:39

    As an addition, care must be taken if you consider to use the dollar sign $ character. git branch pew$ign will create pew. In order to create a branch that has $ within it the whole name should be wrapped in quotes: git branch 'pewSign'. Ideally you should avoid to use the symbol whatsoever.

    0 讨论(0)
提交回复
热议问题