We have our master branch that we merge our features into. I need to be able to increment our version on commit/merge to the master automatically as a part of the merge. Is there a way i can do this so that the upped version is committed as a part of this commit without having to have an automatic 're checkout, change, commit' that will effectively double all our commits?
You can use git hooks for that.
The pre-commit hook specifically. You can create one from the sample in .git/hooks/pre-commit.sample by removing the .sample suffix and editing it. The content of pre-commit will be executed just before the commit.
It could contain something like this
#!/bin/sh
command-that-increases-version version.text
git add version.text
Any modification of version.text will then be included in the commit.
来源:https://stackoverflow.com/questions/17101473/change-version-file-automatically-on-commit-with-git