PyInstaller ’s Branch Model

develop branch: We consider origin/develop to be the main branch where the source code of HEAD always reflects a state with the latest delivered development changes for the next release. Some would call this the “integration branch”.
master branch: We consider origin/master to be the main branch where the source code of HEAD always reflects a production-ready state. Each commit to master is considered a new release and will be tagged.

PyInstaller project doesn’t use long living branches (beside master and develop ) as we don’t support bugfixes for several major releases in parallel.

Occasionally you might find these branches in the repository: [1]

release/ branches:
  These branches are for preparing the next release. This is for example: updating the version numbers, completing the change-log, recompiling the bootloader, rebuilding the manuals. See ref: release-workflow for details about the release process and what steps have to be performed.
hotfix/ branches:
  These branches are also meant to prepare for a new production release, albeit unplanned. This is what is commonly known as a “hotfix”.
feature/ branches:
  Feature branches (or sometimes called topic branches) are used to develop new features for the upcoming or a distant future release.
[1] This branching-model is basically the same as Vincent Driessen described in this blog. But currently we are not following it strictly.