Skip to content

Commit c64e7b4

Browse files
Tyler SmalleyStacey Gammonkobelb
authored
[docs] Updates to development branching (#76063) (#76378)
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> Co-authored-by: Stacey Gammon <gammon@elastic.co> Co-authored-by: Brandon Kobel <brandon.kobel@gmail.com> Co-authored-by: Peter Schretlen <peter.schretlen@gmail.com>\
1 parent 20c6efe commit c64e7b4

File tree

1 file changed

+17
-13
lines changed

1 file changed

+17
-13
lines changed

docs/developer/contributing/development-github.asciidoc

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[[development-github]]
2-
== How we use git and github
2+
== How we use Git and GitHub
33

44
[discrete]
55
=== Forking
@@ -12,17 +12,21 @@ repo, which we'll refer to in later code snippets.
1212
[discrete]
1313
=== Branching
1414

15-
* All work on the next major release goes into master.
16-
* Past major release branches are named `{majorVersion}.x`. They contain
17-
work that will go into the next minor release. For example, if the next
18-
minor release is `5.2.0`, work for it should go into the `5.x` branch.
19-
* Past minor release branches are named `{majorVersion}.{minorVersion}`.
20-
They contain work that will go into the next patch release. For example,
21-
if the next patch release is `5.3.1`, work for it should go into the
22-
`5.3` branch.
23-
* All work is done on feature branches and merged into one of these
24-
branches.
25-
* Where appropriate, we'll backport changes into older release branches.
15+
At Elastic, all products in the stack, including Kibana, are released at the same time with the same version number. Most of these projects have the following branching strategy:
16+
17+
* `master` is the next major version.
18+
* `<major>.x` is the next minor version.
19+
* `<major>.<minor>` is the next release of a minor version, including patch releases.
20+
21+
As an example, let's assume that the `7.x` branch is currently a not-yet-released `7.6.0`. Once `7.6.0` has reached feature freeze, it will be branched to `7.6` and `7.x` will be updated to reflect `7.7.0`. The release of `7.6.0` and subsequent patch releases will be cut from the `7.6` branch. At any time, you can verify the current version of a branch by inspecting the `version` attribute in the `package.json` file within the Kibana source.
22+
23+
Pull requests are made into the `master` branch and then backported when it is safe and appropriate.
24+
25+
* Breaking changes do not get backported and only go into `master`.
26+
* All non-breaking changes can be backported to the `<major>.x` branch.
27+
* Features should not be backported to a `<major>.<minor>` branch.
28+
* Bugs can be backported to a `<major>.<minor>` branch if the changes are safe and appropriate. Safety is a judgment call you make based on factors like the bug's severity, test coverage, confidence in the changes, etc. Your reasoning should be included in the pull request description.
29+
* Documentation changes can be backported to any branch at any time.
2630

2731
[discrete]
2832
=== Commits and Merging
@@ -109,4 +113,4 @@ Assuming you've successfully rebased and you're happy with the code, you should
109113
[discrete]
110114
=== Creating a pull request
111115

112-
See <<development-pull-request>> for the next steps on getting your code changes merged into {kib}.
116+
See <<development-pull-request>> for the next steps on getting your code changes merged into {kib}.

0 commit comments

Comments
 (0)