|
|
The OpenAPI Generator project works on multiple versions in parallel:
|
|
|
|
|
|
* upcoming patch release
|
|
|
* next minor release containing breaking changes with fallback
|
|
|
* next major release containing breaking changes with no fallback
|
|
|
|
|
|
## Branches
|
|
|
|
|
|
To support several versions, several branches are used:
|
|
|
|
|
|
<img width="800" alt="openapi-generator_branches" src="https://user-images.githubusercontent.com/1222165/41271120-03e688c6-6e0f-11e8-80fb-f1616c05aa04.png">
|
|
|
|
|
|
|
|
|
Status in June 2018:
|
|
|
|
|
|
* [`master`](https://github.com/OpenAPITools/openapi-generator/tree/master) branch is for upcoming patch releases (`3.0.1`, `3.0.2`, `3.0.3`, ...)
|
|
|
* [`3.1.x`](https://github.com/OpenAPITools/openapi-generator/tree/3.1.x) branch for the next minor release
|
|
|
* [`4.0.x`](https://github.com/OpenAPITools/openapi-generator/tree/4.0.x) branch for the next major release
|
|
|
|
|
|
|
|
|
### Merge direction
|
|
|
|
|
|
To port changes from one branch to an other, the merge direction is always from the lowest version to the newer.
|
|
|
|
|
|
Example:
|
|
|
|
|
|
* Merge `master` branch into `3.1.0` branch
|
|
|
* Merge `3.1.0` branch into `4.0.0` branch
|
|
|
|
|
|
Those merge commits are done regularly by the core team.
|
|
|
|
|
|
Merge commit is kept in the history in order to facilitate merge conflict resolution.
|
|
|
|
|
|
|
|
|
### Merging back on master
|
|
|
|
|
|
When we drop the support for `3.0.x`, we'll merge `3.1.0` back into `master`.
|
|
|
|
|
|
|
|
|
## Solving conflicts during merge
|
|
|
|
|
|
> TODO, add useful git command, inspired by the discussion in https://github.com/OpenAPITools/openapi-generator/issues/245 |
|
|
\ No newline at end of file |