diff --git a/Branching-Model.md b/Branching-Model.md new file mode 100644 index 0000000..b83d1f2 --- /dev/null +++ b/Branching-Model.md @@ -0,0 +1,22 @@ +There are two important branches in this repository. + +## The `release` branch + +This is the code were the Docker image published on Docker Hub is built from. +It must only contain stable code and the most recent commit should be the commit increasing the version number in the `VERSION` file. + +## The `develop` branch + +It is where all the PRs land. +When it is decided that enough features have landed, a [release is cut](Release). + +## Reason + +We once had the `master` branch. +The `master` branch was the basis for the Docker builds. +So when we merged features there, they were added to the Docker image immediately. + +To get around this we merged all relevant PRs manually and at once, then we cut a release and pushed all the features together to the `master` branch. +That was not a nice workflow, also because that way PRs were kept open for a long time. + +So we introduced the `release` and `develop` branches as described above. \ No newline at end of file