Skip to content

Commit 2e334b4

Browse files
docs(contributors): clarify branching model (#23)
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
1 parent 97239d3 commit 2e334b4

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

docs/guides/guide-contributor/general-guidelines.md

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,25 +61,35 @@ visualizes this process.
6161

6262
[![GitHub Flow](../../images/github_flow.svg)][github-flow]
6363

64-
1. [Create a "feature branch"][git-branch] from the default branch; use the
64+
1. [Create a "feature branch"][git-branch] from the development branch; use the
6565
`feature/my-feature` naming pattern to name your feature branch, e.g.,
66-
`feature/update-docs`; make sure the default [branch
66+
`feature/update-docs`; make sure the development [branch
6767
is up to date][git-pull] before creating the feature branch!
6868
2. [Commit code changes][git-commit] to address the issue you are working on
6969
3. [Push the feature branch][git-push] to the remote and [create a pull
70-
request][github-pr] in GitHub
70+
request][github-pr] against the development branch in GitHub
7171
4. Address any comments added during code review by pushing additional commits
7272
(there may be multiple rounds of reviews)
7373
5. Once all issues are resolved, code owners will merge the feature branch into
74-
the default branch using the ["squash merging"][github-merge-squash] method
74+
the development branch using the ["squash merging"][github-merge-squash]
75+
method
76+
77+
!!! note "Development branch"
78+
79+
Typically, `dev` is the name of the development branch in our projects.
80+
In a few cases (e.g., _this_ repository), there is no development branch
81+
and changes are merged immediately into the main branch, typically called
82+
`main`.
7583

7684
!!! note "Default branch"
7785

78-
Typically, `dev` is the default branch for all projects in pre-release
79-
state, i.e., those with version numbers below `v1.0.0`. Upon release,
80-
`main` becomes the default branch, and [semantic versioning][sem-ver] is
81-
strictly adhered by. In some cases, there may not be a `dev` branch and
82-
`main` is used as the default branch straight away.
86+
For projects in pre-release state, i.e., those with version numbers below
87+
`v1.0.0`, the development branch is typically the default branch (meaning
88+
that the correct target branch for your PRs is set automatically).
89+
90+
With the first major release, the default branch is set to the main
91+
branch instead. In that case, make sure to manually select the development
92+
branch as the target branch for your PRs.
8393

8494
??? note "Substantial changes"
8595

@@ -190,4 +200,4 @@ The [pull request][pull_request] template will be successively added to all
190200
repositories. Until that is the case, you can already make use of it by
191201
self-reviewing your pull requests according to the checklist and descriptions.
192202

193-
[pull_request]: PULL_REQUEST_TEMPLATE.md
203+
[pull_request]: PULL_REQUEST_TEMPLATE.md

0 commit comments

Comments
 (0)