I was wondering if the strategy I m using for tagging and hotfixing tags (which then I use for deploying rails applications) with git is appropriate.
For tagging I just tag a commit of the master trunk.
If it happens I have to hotfix the tag, I m checking out the tag (e.g. 1.0), fix the issue, commit it and re-tag it (e.g. 1.0.1). Now, if I have to do another fix on the tag, I repeat the procedure, using as first checkout the tag of the first hotfix (e.g. 1.0.1).
Now, I noted two things: 1. when I checkout the 1.0.1, I get a warning saying I m not in branch - I assume that it s ok, but is it appropriate as strategy? 2. when I try to deploy the 1.0.2, I receive an error from capistrano (tool used for deploying rails apps) during the code update from the remote repository, saying that it can t find the object [commit of 1.0.2]. I can correct this problem checking out the master and merging 1.0.2.
Of course, I m always pushing the tags to the repository.
Is there anything wrong/inefficient/inappropriate, or this is an appropriates strategy? I m completely new to git and I couldn t find around a great deal of information about the deployment strategies generally used.