One interesting, slightly related thing about git branching I run into every once in a while:
$ git checkout -b test
Switched to a new branch 'test'
$ git checkout -b test/1
fatal: cannot lock ref 'refs/heads/test/1': 'refs/heads/test' exists; cannot create 'refs/heads/test/1'
Forward slashes are special in branch names; I'd guess because there's a filesystem representation of the branch name happening in there.