Skip to content

Commit 339d127

Browse files
committed
Update branching scheme notes
1 parent 13feadf commit 339d127

File tree

1 file changed

+27
-8
lines changed

1 file changed

+27
-8
lines changed

README.md

+27-8
Original file line numberDiff line numberDiff line change
@@ -31,29 +31,48 @@ A final generic integration branch merging other branches is named
3131
#### Feature branch name prefixes
3232

3333
Other branches under the prefix name are named (lowercased, dashes) according
34-
to the feature.
34+
to the change type and feature.
3535

36-
Feature branch names that cannot be upstreamed for opinionated reasons are
37-
prefixed with `tb-`, meaning that they are additional customizations for
38-
Tow-Boot that are unlikely to be desirable by upstream.
36+
Feature branches coming from upstream contributions not yet merged are named
37+
`upstream-$feature`.
38+
39+
Feature branches that can be upstreamed are named `base-$feature`. They
40+
should be self-contained and not rely on other branches. If it does, it is
41+
`wip-` until it's ready.
42+
43+
Feature branch names that cannot be upstreamed as-they-are, because it's WIP,
44+
or because of the style of workarounds used, are prefixed `wip-`.
45+
The changes should generally be acceptable by upstream, once they are
46+
implemented correctly.
47+
48+
Feature branches names that cannot be upstreamed for opinionated reasons are
49+
prefixed with `tb-$feature`. This means that they are additional
50+
customizations for Tow-Boot that are unlikely to be desirable by upstream.
51+
52+
Family-specific feature branches are prefixed `soc-$family[-$feature]`. They
53+
may or may not be upstreamable as a whole.
3954

4055
Board-specific feature branches are prefixed `board-$identifier[-$feature]`.
4156
The feature name may be missing if the changes are trivial and require only
42-
a single branch.
57+
a single branch. They may or may not be upstreamable as a whole.
4358

44-
Feature branch names that cannot be upstreamed as-they-are, because of the
45-
style of workarounds used, are prefixed `wip-`. The changes should generally
46-
be acceptable by upstream, once they are implemented correctly.
59+
Branch prefixes not listed here are forbidden.
4760

4861
> **NOTE**: `wip-` branches are allowed to refer to any other branches for
4962
> the release, when they build up on the features. The octopus merge strategy
5063
> used to produce the `_all` branch should handle most situation without
5164
> making a fuss. If it does not, it may mean the code is depending or
5265
> conflicting on changes from another set of branches.
5366
>
67+
> Similarly, set of changes for an SoC family may require being merged into
68+
> a base branch for the family.
69+
>
5470
> Care should be taken to prevent complex inter-dependencies when authoring
5571
> changes.
5672
73+
The `_all` branch is merged with a script by sorting branches by type in the
74+
same order as this list, and then sorted by name.
75+
5776
### Commits
5877

5978
External patches brought into the tree should include an `Origin: ` line

0 commit comments

Comments
 (0)