Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

What branch name conventions do you use?

What, if any, conventions do you apply to the naming of branches in order to create notional groups of branches? I'm trying to validate a hypothesis to help shape a plugin idea.

This is a question for users of Stash; but StashDev might as well chip in, although I already have some idea of how you work. :-)

Do you, for example, name branches to reflect the release you intend them to be part of? Do you name them according to the software component or feature they apply to? Something else?

8 answers

1 accepted

10 votes
Answer accepted

Hi David,

I find that there are 2 main naming convention styles within git. Hyphen separated or slash separated. GitFlow uses the latter to separate groups of branches:



Many of the cross product teams within Atlassian use this convention. Product teams within Atlassian seem to use the hyphen approach:



I find a lot of Git experts like to use the slashes approach as it equates to directories organising branches on the filesystem

Git flow standards:


 - master

 - develop

 - feature/XXX (encourage JIRA issue key)

 - release/XXX (encourage JIRA issue key if applicable, e.g., a Deploy ticket, or a single feature)

 - hotfix/XXX (encourage JIRA issue key)

6 votes

I know that the Confluence team has adopted the following approach and follows an "Issue/Story driven development" workflow:

Short lived branches are created for every issue/story using the following naming convention:






Branch names CAN have following format:

Branches are of the following types and naming should be chosen based on its type accordingly and use “-” and “_” with lower and uppercase alphanumeric characters as applicable, While creating branch make sure your select from only first four options, the type “Others” are reserved to be used only in exceptional cases like (R&D, Practice, Temp Changeset Folders etc)

Branch Types:

i. Release

ii. Feature/Bugfix/Hotfix

iii. Others

We have a centralized/non-forking workflow.

We encourage developers to push their in-work features to the centralized repo. We enforce feature branches pushed to the server follow the standard of: <username>/<branchname>. We recommend the branch be named as the issue ID, but that is not part of our process.

We do not differentiate between hotfix, bugfix or feature.

We do not use master past the first commit. It makes the initial clone faster.

Releases each have their own short uniquely named branch without a slash. We try to keep these names to 6 characters or less.

All the standards mentioned in above answers are all time best standards to follow for branching in GIT. We always prefer the creation of branch name includes some sprint name and JIRA no. 

We use the following conventions for creating branches while working with Agile JIRA sprint mode.


  • Sprint Master Branch - <PROJECT_SHORT_NAME><SPRINT_NO.> - e.g. MCS40
  • Sprint Dev Branch - <PROJECT_SHORT_NAME><SPRINT_NO.>_<JIRA_NO> - e.g. MCS40_MM-7387
  • Sprint Release Branch - Release_<PROJECT_SHORT_NAME><SPRINT_NO.>_<SUB_PROJECT_SHORT_NAME>_<VERSION_OF_RELEASE> - e.g. Release_MCS40_MM_1.2.5
  • Hotfix Branch - e.g. Hotfix_MCS40_MM-7400


I hope it will help someone.


0 votes
Deleted user Oct 27, 2017

We work on a mercurial repo, branch-per-version, branch-per-issue and development on default.

Versions are semver, vMajor.minor.patch.
Issue branches are Jira codes.

For our development/code review/pull request branches we are using a scheme of

DEV-(username)-(Jira issue key)-(optional desc/keyword)

Suggest an answer

Log in or Sign up to answer

Atlassian Community Events