git checkout -b
git checkout -b BRANCH_NAME creates a new branch and goes to the new branch while
git branch BRANCH_NAME creates a new branch but leaves you on the same branch.
In other words
git checkout -b BRANCH_NAME does the following for you.
git branch BRANCH_NAME # create a new branch git checkout BRANCH_NAME # then switch to the new branch