Configure a project's branching model

To configure the branching model for a project (only workspace admins can configure the branching model):

  1. In the project, select to Project settings in the left sidebar.

  2. Under Workflow select Branching model.

  3. Choose the details of your repository branching model, then select Save.

Branching model details

You can use the branching model to define a branch based workflow for your project. When you map your workflow to branch types, you can ensure that branches are named consistently by configuring which branch types to make available. We've suggested some branch prefixes you might want to use but you can also specify your own naming convention. A consistent naming convention makes it easier to identify branches by type. You can also define which branches are your development and production branches, which allows us to better suggest source and target branches for creation and pull requests.

Branch types

There are several types of branches that are frequently used in software development. This section explains what each branch type is for, and the typical prefix convention for each branch type. In Bitbucket, the prefix can be changed for all branches other than development or production.

Development branch

Usually the integration branch for feature work and is often the default branch or a named branch. For pull request workflows, the branch where new feature branches are targeted.


 Production branch

Used for deploying a release. Branches from, and merges back into, the development branch. In a Git-based workflow it is used to prepare for a new production release. 


 Feature branch

Used for specific feature work or improvements. Generally branches from, and merges back into, the development branch, using pull requests.


 Release branch

Used for release tasks and long-term maintenance versions. They are branched from the development branch and then merged into the production branch.


 Bugfix branch

Typically used to fix Release branches.


 Hotfix branch

Used to quickly fix a Production branch without interrupting changes in the development branch. In a Git-based workflow, changes are usually merged into the production and development branches.



Additional Help