Branching structure #658
Unanswered
WeilerP
asked this question in
Method/Algorithm
Replies: 1 comment
-
This has been implemented in a slightly different form in #725. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
@michalk8 (and FYI @Marius1311), I'm continuing the discussion regarding branching structure from #655 - thought it might be best to have this in a separate discussion rather than buried in a PR.
I think
cellrank@dev
andcellrank@master
"diverged" becausecellrank@dev
was squash merged intocellrank@master
. Let's saycellrank@dev
is three commits ahead ofcellrank@master
. If you thencellrank@dev
intocellrank@master
, GitHub will say thatcellrank@dev
is three commits ahead and one commit behindcellrank@master
cellrank@dev
intocellrank@master
, GitHub will say thatcellrank@dev
is one commit behindcellrank@master
(that's the merge commit)Right now, GitHub says that
cellrank@master
andcellrank@dev
are even. This is the case because you merged (merge commit)cellrank@master
intocellrank@dev
, right?When merging
cellrank@dev
intocellrank@master
, we should, IMO, be using a simple merge commit, for features, bug fixes, etc. squash merges. This way,cellrank@master
mimicscellrank@dev
, i.e. the individual feature commits are still visible in its commit history and you can still rungit blame
and get reasonable results.Concerning branch names: I personally use
feat/X
(features, enhancements, etc.) is based off the develop branch and squash merged into it again.fix/X
(bug fixes) is based off the develop branch and squash merged into it again.hotfix/X
(hotfixes after which new release is tagged) is based offmaster
and squash merged both inmaster
anddevelop
.release/X.X.X
(releases) is based offdevelop
and merged (merge commit) both intomaster
anddevelop
(in case something was added to the release after branching offdevelop
. You canThe CI can be configured to add a new tag based on the branch name, i.e. for
release/X.X.X
the new release/tagX.X.X
is added. The same goes for hotfixes.Beta Was this translation helpful? Give feedback.
All reactions