ecmwf / earthkit-data

A format-agnostic Python interface for geospatial data
Apache License 2.0
57 stars 15 forks source link

Should we be using a dev branch? #66

Closed samsammurphy closed 1 year ago

samsammurphy commented 1 year ago

Is your feature request related to a problem? Please describe.

Merging feature branches directly into main slows down development time and perhaps creates too many releases.

Describe the solution you'd like

Short answer = Branch features from dev and only merge dev into main on a release.

Longer answer

main: The main branch stores the official release history. All commits in the main branch represent a version of the project that is deployable and has been thoroughly tested.

dev: The dev branch is where the next release will be developed. The dev branch is a copy of the main branch where all the features approved for the next release are integrated.

feature: A feature branch is created from dev for developing new features for the upcoming or a distant future release. When a feature is complete, it is merged into the dev branch.

Describe alternatives you've considered

No response

Additional context

No response

Organisation

ECMWF

tlmquintino commented 1 year ago

these are the official names used at ECMWF:

Please follow the 'Git Flow' branching strategy.

tlmquintino commented 1 year ago

the reason earthkit data is/was develop without branches is because it was still in infancy and changing too much and there was no software lifecycle management needed. Now that many developers are contributing and it starts to be more stable, it is probably time to introduce branches.

sandorkertesz commented 1 year ago

The develop branch has been added.