VocabReminder
English dictionary with notifications so you won't forget what you're studying!
Click here for more info about the app
VocabQuiz
The app that quizzes and scores you on your vocabulary!
Click here for more info about the app

Git Feature Branch Naming Strategy

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

Typically, we have three main branches at any given time in a project lifecycle.

master, development and staging.
Master is production ready code, development is actively being worked on and staging is pre-flight testing before deploying master.

Features are branched off of development and use underscores to indicate distance from originating branch. For instance


_development_users
development_users_reset_password
indicates that development_users_reset_password branched off of _development_users branch.
___development_users_reset_password_experiment
(3 underscores away) would indicate that I was experimenting with a branch off of development users reset password branch.

This provides a nice visual hierarchy when running git branch from the command line. It's also helpful when you have multiple features being worked on by several people and you want to know where these branches are in relation to each other without needing to ask anyone. Here is a more complex example that illustrates the usefulness in using underscores in naming feature branches


  development_people_importing_csv
* development_people_importing_xml
  __development_users_password_reset
  _development_people_importing
  _development_users
  development
  master
  staging

Tagged w/ #branching #features #git #naming things #workflowgit