Git Tagging
Introduction#
Like most Version Control Systems (VCSs), Git has the ability to tag specific points in history as being important. Typically people use this functionality to mark release points (v1.0, and so on).
Syntax#
-
git tag [-a | -s | -u < keyid >] [-f] [-m < msg > | -F < file >] < tagname > [< commit > | < object >]
-
git tag -d < tagname >
-
git tag [-n[< num >]] -l [—contains < commit >] [—contains < commit >] [—points-at < object >] [—column[=< options >] | —no-column] [—create-reflog] [—sort=< key >] [—format=< format >] [—[no-]merged [< commit >]] [< pattern >…]
-
git tag -v [—format=< format >] < tagname >…
Listing all available tags
Using the command git tag lists out all available tags:
$ git tag
<output follows>
v0.1
v1.3Note: the
tagsare output in an alphabetical order.
One may also search for available tags:
$ git tag -l "v1.8.5*"
<output follows>
v1.8.5
v1.8.5-rc0
v1.8.5-rc1
v1.8.5-rc2
v1.8.5-rc3
v1.8.5.1
v1.8.5.2
v1.8.5.3
v1.8.5.4
v1.8.5.5Create and push tag(s) in GIT
Create a tag:
-
To create a tag on your current branch:
git tag < tagname >This will create a local
tagwith the current state of the branch you are on. -
To create a tag with some commit:
git tag tag-name commit-identifierThis will create a local
tagwith the commit-identifier of the branch you are on.
Push a commit in GIT:
-
Push an individual tag:
git push origin tag-name -
Push all the tags at once
git push origin --tags