Sounds like a generally good plan to me. The only issues might be picking what is a bug fix commit vs a non bug fix commit - I'm sure we are all guilty of finding a bug while changing code and not submitting it as a separate commit. But providing we all try to be good in that sense, I think a bug fixes release is a good idea.
Phil Get Outlook for Android<https://aka.ms/ghei36> ________________________________ From: Alan W. Irwin <alan.w.irwin1...@gmail.com> Sent: Monday, December 17, 2018 5:31:31 AM To: PLplot development list Subject: [Plplot-devel] git workflow plans for the proposed bug-fix plplot-5.14.1 release Can some git guru here review my proposed git workflow for the planned 5.14.1 release below? The reason I ask for that review is because I currently have no practical experience with some of the special git commands that will be needed. In fact, because of that lack of experience I previously did not create a bug-fix release in an earlier release cycle for PLplot (at least in its git era) when I likely should have! So this bug-fix release will be a long-overdue learning experience for me. That said, I am pretty sure from reading on-line material and a hint from one of our users what git steps I would have to take. Also note these proposed steps do not violate our (enforced) workflow rule that no merge commits other than fast-forwarded ones are allowed. Those git steps are as follows: * Create a local branch called 5.14.0-bugfix from the existing plplot-5.14.0 tag. * Cherry pick bug-fix commits such as plplot-5.14.0-8-gdb9d90d0b onto that branch. * Go through the usual release procedure while staying strictly on that branch which will add other commits to that branch such as the new (short) release notes and ChangeLog for that 5.14.1 release without ever merging those commits back to master. Which means none of this bugfix release work impacts on the ordinary development of the master branch. One of the last steps in that procedure would be to push the local tag that points to the tip of 5.14.0-bugfix (called plplot-5.14.1 in this case) to our SF git repository (again without changing the master branch). * From remarks in <https://stackoverflow.com/questions/9265278/what-happens-if-i-push-a-tag-for-a-commit-that-hasnt-been-pushed> it appears that pushing a tag pushes the associated commit and also pushes all ancestors of that commit that have not been pushed before. If that is correct, then all commits on my local branch called "5.14.0-bugfix" will end up accessible at SF but not organized as a formal branch there. That result is fine with me since it doesn't clutter the SF version with extra branch names, and the result is enough to allow anybody (after they use the "git refresh" command) to access the commit corresponding to the plplot-5.14.1 tag or any of that commit's ancestors. For example, if later on during the release cycle I decided to release another bug-fix release called 5.14.2, I could start that process by branching from the plplot-5.14.1 tag. Furthmore after pushing the plplot-5.14.1 tag I would likely delete the 5.14.0-bugfix local branch to be consistent with the SF repository; I would have no further use for that branch; and that branch deletion does not get rid of the plplot-5.14.1 tag, the associated commit or any ancestors of that commit; Of course, with this model of workflow for bug-fix releases, no attempt would ever be made to merge bug-fix branches back to master since that makes no sense in any case and would violate our (enforced) rebase work flow rule that there can be no merge commits that cannot be fast-forwarded. Again, comments on this plan from the git gurus here will be most welcome. Alan __________________________ Alan W. Irwin Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel
_______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel