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?

6 answers

1 accepted

1 vote
Jason Hinch Atlassian Team Nov 04, 2012

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

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:






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)

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

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

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.

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.

Suggest an answer

Log in or Join to answer
Community showcase
Louis De Jaeger
Posted 6 hours ago in Off-topic

Friday fun: your best joke

Hi all Lets make this Friday fun really fun and post one (or more) of your best jokes! The joke can be about an Atlassian product, or just a really fun joke you want to share! I’m not the best j...

23 views 1 2
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot