This gist shows how to automatically increment and add version numbers to your commit messages and source code.
The major and minor version numbers are managed manually using git tag, while the per-commit numbers are managed automatically with git hooks.
This example uses the following version numbering scheme:
v{MAJOR}.{MINOR}-c{COMMIT#}
Start out by running git tag -a v1.0 for the initial release