git push --tags
Log - in at https://nexus.codehaus.org/, check the staging repository and if everything is fine, close and release it.
- You won't be able to perform release:prepare without having the HTTP credentials set in settings.xml, to be able to upload files to the staging storage at Codehaus Nexus
- You won't be able to close a Nexus staging repository without having your GPG key exported to a key server.
- Things work better if your local account name matches the one at Codehaus, and you don't have to specify the username parameter. Otherwise, things may break, especially the Git pushes.
Recovering from Failed Releases
There are several states you may get in after the release process described above fails:
Recover the staging repository:
Log in at https://nexus.codehaus.org/, select the the staging repository entry which failed and drop it.
Reset the local git repository to the state before releasing:
First remove the additional files generated by the release plugin:
git log get the latest commit before the auto-generated commit of the release plugin follow, for example:
commit 49a769a0eefa7476d5ccc3849692ffe7b6e5ed2e Merge: d682c30 3218c81 Author: René Krell <firstname.lastname@example.org> Date: Tue Oct 15 09:45:05 2013 -0700 Merge pull request #143 from rkrell/IZPACK-993 [IZPACK-993] Dynamic variables - add configuration attribute to control whether to escape backslashes when reading from option and INI files
Now you can reset the local repository to the original state:
reset --hard 49a769a0eefa7476d5ccc3849692ffe7b6e5ed2e
Now you can repeat the release process from the beginning.
Post-processing and Announcing Releases