As explained in this post git checkout -b <mybranch> runs two commands simultaneously
git branch <mybranch>git checkout <mybranch>
I created a new git repository with git init. Now When I run git branch development I get the error:
Not a valid object name: 'development'.
If I run git checkout newbranch. I get the error:
pathspec 'newbranch2' did not match any file(s) known to git.
But if I use git checkout -b BigShotBranch then it simply creates that local branch with the message:
Switched to a new branch 'BigShotBranch'
so my question is why was the -b flag able to create the branch while any other method could not? Does the -b flag only combine two commands or do anything more than that?
P.S: This seems to be a glitch in git. After git checkout -b development the master branch is actually renamed to development. There is no master branch now.