This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Rearrange the RMG steps relating to the release branch and tag
The main steps in this regard in the current RMG are:
1. Commit the work as it's done to the local release branch
2. Push those commits to the remote release branch (creating it in the
process)
3. Create a tag identifying the last commit in the release branch
4. Publish that release tag to the public repository
5. Merge the [local] release branch commits into the local blead branch
6. Push those merged commits to the remote blead branch
A recently added query in the RMG asked why it was necessary to push the
work so far (step (2) above), given that we're working on a release branch.
In an email discussion with RJBS we reached the conclusion that it is
indeed unnecessary: the merge in step (5) operates purely on the local
release branch, so there is no need to push anything first.
The release tag still needs to be pushed (step (4)), though, because in a
default Git configuration "git push" only pushes commits, not tags as well.
However, if we omit step (2) then it makes more sense to delay step (4)
until after steps (5) and (6) otherwise we are publishing a tag identifying
a commit that hasn't been pushed anywhere public yet.
The above sequence of steps has therefore been changed to:
1. Commit the work as it's done to the local release branch
2. Create a tag identifying the last commit in the local release branch
3. Merge the local release branch commits into the local blead branch
4. Push those merged commits to the remote blead branch
5. Publish the tag (which identifies the last of those pushed commits)
to the public repository
For the same reasons, the "git push origin ...." when disarming
patchlevel.h in non-BLEAD-POINT releases has been removed since we're still
on the release branch at this point in the process.
Also, since we now never push anything to a remote release branch, there is
no longer any need to delete it. Only the local release branch needs
deleting.
Finally, the last "git commit" instruction in the RMG (regarding copying
perldelta.pod to blead for MAINT and BLEAD-FINAL releases) was lacking a
"git push origin ....": we're no longer on the release branch by this stage
of the process.