[petsc-dev] petsc rewind of next branch?

Jed Brown jed at jedbrown.org
Fri Jun 16 10:54:03 CDT 2017

smithc11 <smithc11 at rpi.edu> writes:

> I suppose this email should/could go to a petsc mailing list.  If you 
> agree, please let me know which one and I'll gladly send it there.

Cc'd petsc-next.

> I was just reading through the petsc developer's guide
> https://bitbucket.org/petsc/petsc/wiki/developer-instructions-git
> and an older presentation of yours
> https://jedbrown.org/files/20141113-Software.pdf
> on git workflows involving a master, next, and topic branches.
> In petsc, is the next branch rewound (reset to point at the head of 
> master) periodically (i.e., after a release)?  

After a feature release.

> If so, what git commands are used for the rewind?  In the gitworkflows
> docs: https://git-scm.com/docs/gitworkflows a 'reset --hard' is used
> followed by an 'announcement'. I'm guessing the announcement tells
> folks who cloned the repo that they should expect a history change in
> next?

Yup.  Satish has been doing this lately, but I expect the procedure
looks like

  git checkout master
  ... set release version strings
  git commit -am'PETSc 3.8 feature release'
  git tag -s
  git checkout maint
  git merge --ff-only master
  git checkout master
  ... set PETSC_VERSION_RELEASE=0 (a flag meaning that this version is not a release)
  git checkout next
  git reset --hard master
  git push origin maint master +next

Then send an email announcing the release and that 'next' has been
rewound.  The easiest thing for users is to run

  git branch -D next

in which case any subsequent

  git checkout next

will create it anew.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20170616/17d614d5/attachment.sig>

More information about the petsc-dev mailing list