Git branch naming conventions

Tags: git

As you have spent a couple of years in software or web development and if Git has become part of your work routine, this small tip of the day is going to help you optimize your workflow and increase productivity. The benefit of adopting this habit is long term and will add a lot of value.

There are only two hard things in Computer Science: cache invalidation and naming things. > — Phil Karlton

As we have all struggled naming things whether it is variables, classes or even at times naming our projects is hard. I bet a lot of developers still struggle to name their git branches as well or do not put enough thought into naming them since they are not something that will come and bite us in the future but trust me even if they do not bite, it still leaves certain marks on our projects.

I have a convention that I follow myself to make it easy to find branches later in the future and identifying intention behind creating this branch just by looking at their name.

Feel free to modify this convention best to your workflow and the way your mental modal works and identifies words.

git checkout -b YOUR_INITIAL/TYPE_OF_WORK/JIRATICKETNUMBER-BRANCH-NAME

I know this might look a bit tedious to create branches with such long names but again the idea is to be able to interpret intention behind created branch just by looking at their name or you can even search with the pattern.

For example, I name my branches as,

vp/feature/124-create-login-page

This can help you a few months/years down the road to find the branches you’ve worked on easier either through Github UI shown in the screenshot,

Github screenshot

OR by the command line

git branch --list | grep "vp/feature/"

git branch --list "vp/feature/*"

Summary

To break it down the convention,

YOUR_INITIAL/TYPE_OF_WORK/JIRATICKETNUMBER-BRANCH-NAME

YOUR_INITIAL: It can be anything you want, your first name, your GitHub username

TYPEOFWORK: It can be of any category i.e. feature, fix, refactor, task, prototype, throwaway

JIRATICKETNUMBER-BRANCH-NAME: You can have a JIRA ticket number or if you are not using a ticket-based system it can be MMYY timestamp format followed with the branch name.

I’d love to know what do you guys use for naming your branches and how do you optimize your workflow.

PS: Cover Photo by Yancy Min on Unsplash.


Thank you, your answers have been sent
These will help me create more relevant content that you’re looking for.
Always stay up to date
I do not share data to anyone

I’ll only use the information you provide on this form to get touch about the topics you’ve chosen above. I do not share this data with anyone else.