Git branch/tag name with ^{}

Running the command git ls-remote lists the following entries:

e6c1ddea6ee8eefa9e96e349dd4fad4a48c16448    refs/tags/1.1
1a3b5ae3a50ca2f24e5cd917cbf51d371f1dd01e    refs/tags/1.1^{}
81901877c5add523cd4a4bb8f51ad3bbbacbd686    refs/tags/1.2
4681b1ae6ec71301019da13d1790c2f808c2c553    refs/tags/1.2^{}

What does the ^{} mean in the output?

  • Git equivalent to hg update
  • Git on Windows: What do the crlf settings mean?
  • Avoid unwanted merge commits and other commits when doing pull request on GitHub
  • Can I setup auto-complete for git on Windows via cmd.exe?
  • How to show git log with branch name
  • Make git ignore the date in PDF files
  • Is there a way to make git more verbose while pulling from a repo.?
  • How to use composer to install part of a git repository?
  • push changes without pull
  • Can git operate in “silent mode”?
  • List all text (non-binary) files in repo
  • confused about git branches and master interaction
  • One Solution collect form web for “Git branch/tag name with ^{}”

    They are not part of the name, but rather an indicator to git rev-parse that it should dereference a tag (and, with any luck, find a commit, although in theory the tag could point to another tag, or even a tree or blob; but if it points to another tag, the ^{} keeps on peeling the onion layers until it hits a non-tag).

    git ls-remote (or really, the remote itself) uses this syntax to send you the commit-ID. (I’m not quite sure what happens if the tag ultimately points to a tree or blob.)

    Git Baby is a git and github fan, let's start git clone.