git tag

By  on  

git tag is used to pin down a given revision as significant, often for the purpose of officially releasing code.  Once a tag is created, it's often referred to by build and deploy scripts instead of the tag's represented commit.  Tagging revisions  and deleting tags in git is easy -- let me show you how to do it!

Tagging a Revision

Assuming you're at the revision you want to tag, git tag {tagname} is the format to use:

git tag 0.1.0

You can name the tag whatever you'd like but oftentimes the tag is named via a release number system like 0.1.0, 0.1.1, 0.2.0, and so on.

Pushing Tags

You can create a tag locally but they aren't automatically pushed to the remote repository -- you must do that manually:

git push --tags

Don't forget to push your tags!

Deleting Tags

If you want to delete or remove a tag from history, you may do so using the -d flag:

git tag -d 0.1.0
git push origin :refs/tags/0.1.0

Unless you do a fair bit of tagging, you likely have to look back on a few of the commands when the time comes -- at least I do!

Recent Features

  • By
    Designing for Simplicity

    Before we get started, it's worth me spending a brief moment introducing myself to you. My name is Mark (or @integralist if Twitter happens to be your communication tool of choice) and I currently work for BBC News in London England as a principal engineer/tech...

  • By
    CSS @supports

    Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS.  What we end up doing is repeating the same properties multiple times with each browser prefix.  Yuck.  Another thing we...

Incredible Demos

Discussion

  1. Speaking of Tags, here is an one-liner that will automatically checkout the latest tag of a git repository.

    git checkout $(git describe --tags $(git rev-list --tags --max-count=1))

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!