git-check-ref-format

GIT-CHECK-REF-FORMAT(1)		  Git Manual	       GIT-CHECK-REF-FORMAT(1)



NAME
       git-check-ref-format - Make sure ref name is well formed

SYNOPSIS
       git-check-ref-format <refname>

DESCRIPTION
       Checks if a given refname is acceptable, and exits non-zero if it is
       not.

       A reference is used in git to specify branches and tags. A branch head
       is stored under $GIT_DIR/refs/heads directory, and a tag is stored
       under $GIT_DIR/refs/tags directory. git imposes the following rules on
       how refs are named:

       1. It can include slash / for hierarchical (directory) grouping, but no
	  slash-separated component can begin with a dot .;

       2. It cannot have two consecutive dots .. anywhere;

       3. It cannot have ASCII control character (i.e. bytes whose values are
	  lower than \040, or \177 DEL), space, tilde ~, caret ^, colon :,
	  question-mark ?, asterisk *, or open bracket [ anywhere;

       4. It cannot end with a slash /.

	  These rules makes it easy for shell script based tools to parse
	  refnames, pathname expansion by the shell when a refname is used
	  unquoted (by mistake), and also avoids ambiguities in certain
	  refname expressions (see git-rev-parse(1)). Namely:

       1. double-dot .. are often used as in ref1..ref2, and in some context
	  this notation means ^ref1 ref2 (i.e. not in ref1 and in ref2).

       2. tilde ~ and caret ^ are used to introduce postfix nth parent and
	  peel onion operation.

       3. colon : is used as in srcref:dstref to mean "use srcref’s value and
	  store it in dstref" in fetch and push operations. It may also be
	  used to select a specific object such as with git-cat-file(1)
	  "git-cat-file blob v1.3.3:refs.c".

GIT
       Part of the git(7) suite




Git 1.5.5.6			  01/12/2009	       GIT-CHECK-REF-FORMAT(1)

Personal Tools