I assume you are using git for your source control management, but are you tagging your versions? And are you tagging them correctly?! A part of being a good open source maintainer is keeping your git history in good shape.
What are git tags?
tag is a special point in your git history. A tag does not necessary have to
indicate a release, but for the sake of this blog post lets say it is, it makes
things a bit easier. You can list all your tags in your git repo using the
tag command with no options.
To create a new tag you simply run
git tag -a v2.0.1 -m 'v2.0.1' which will
create a new tag with the name of
v2.0.1. Remember to add the
--tags flag in
order to push your newly created tag to your repository.
Why should I tag?
Tagging makes it super easy to jump back in time to a specific release of your
code without digging around and looking for something which indicates a release.
Simply checkout the tag to a new branch by
git checkout -b version2 v2.0.1 to
get on with it.
Secondly, if you are using GitHub your tags will automatically show up as
releases which your users can download, and you can annotate by adding extra
information to in GitHub Flavored
Automate all the things!
Tagging your releases may become tedious work after the first couple of times. It is time to automate the process of bumping all the version numbers, committing the changed files, and tagging the new release to git.
release.sh script will update your
package.json project file
with the new version and tag the release. Run it with
And for the love of God, use semantic versioning!
If you have any questions or other feedback to the article, please post them in the comment section bellow and I promise to read them and respond to you on a regular basis.