GitFlow and Branching Strategy#
The adopted GitFlow is the following:
You decide to work on implementing a new feature called ‘new_feature’.
You open a feature branch based on the
devbranch with the naming conventionfeature/<the_name_of_the_feature>, which in this case would be ‘feature/new_feature’.You test your contribution locally, commit your changes and push to the feature branch.
You open a PR to
dev. This triggers some GitHub actions responsible to run tests. If the test pass, code has the required quality, the PR is accepted todev.When a number of new features are to be published, we open a PR from
devtomain. This triggers testing again. If all is good, a test deployment is done to TestPyPI.If all is good, we bump the version number and create a new release. This triggers a GitHub Action that publishes to PyPI.
Notes
If what you are working on is not a new feature but a fix, the branch you open should have the naming convention
fix/<the_name_of_the_issue>.If what you are working on is not a new feature but a hotfix, the branch you open should have the naming convention
hotfix/<the_name_of_the_issue>.