
just to make it clear (even doh i think you know that):
master does not have a special role at all when tlaking about merge/rebase strategies, it is just a name (same goes for origin).
my strategy (in my words, same thing, different wording):
1. always merge different branches. rebase on the same branch if no force is needed to do so.
2. you are only ever allowed to rebase commits in a branch, if nobody else saw them yet (in this branch). as soon as something is pushed (to a public repo), you have to consider it seen/fetched by somebody.
as a side note (not directly related):
i think the master branch in your springheadless repo should actually be called springheadless instead. because....
the repo is a copy/fork of the spring main repo, so you can have github/spring as origin eg, and github/springheadless as originHL.
then fetch from both, and you would see (among others), these branches:
as it is now:
Code: Select all
origin/master
originHL/master
i don't think we have to change it though, as long as we keep in mind that the two masters are different branches.