=head1 RELEASE WORKFLOW
git checkout master
-<<<<<<< HEAD
-=======
# minor releases
git checkout stable/X.YY
->>>>>>> c5d6da2... Tweaks to clarify stable branch naming scheme.
# edit for final version bumping, changelogging, etc
# prepare release (test suite etc)
perl-reversion -bump
make manifest
git commit
-<<<<<<< HEAD
- git checkout stable
- git merge master # must be a fast forward
- git push both
-=======
git branch stable/X.YY # only for non-trial major releases
->>>>>>> c5d6da2... Tweaks to clarify stable branch naming scheme.
shipit # does not ship the tarball, but does everything else
cpan-upload ~/shipit-dist/Moose-X.YZ.tar.gz
-<<<<<<< HEAD
Development releases are made without merging into the stable branch.
-=======
+
# non-trial releases
cpan-upload ~/shipit-dist/Moose-X.YYZZ.tar.gz
cd ~/shipit-dist
mv Moose-X.YYZZ.tar.gz Moose-X.YYZZ-TRIAL.tar.gz
cpan-upload Moose-X.YYZZ-TRIAL.tar.gz
->>>>>>> c5d6da2... Tweaks to clarify stable branch naming scheme.
=head2 Release How-To
# hack
git commit
-<<<<<<< HEAD
-Then a cabal member merges into stable:
-
- git checkout stable
- git merge topic/my-emergency-fix
-=======
Then a cabal member merges into C<master>, and backports the change into
C<stable/X.YY>:
git push
git checkout stable/X.YY
git cherry-pick -x master
->>>>>>> c5d6da2... Tweaks to clarify stable branch naming scheme.
- git push
- # release
- git checkout master
- git merge stable
=head1 PROJECT WORKFLOW