Keith Derrick [off-list ref] writes:
The problem arises when a branch already exists with a name
matching the stem of the new branch name.
...
But, for the reverse reason, I can't now create the branch named 'hotfix'
All correct. Allowing '/' in branch names came about not with a
careful design but was done by a happy accident, and we accepted it
under the condition "as long as users know that they cannot have
branches D and D/F at the same time, that is fine".
An obvious alternative convention you can adopt would be to use not
'/' but some other separating characters (e.g. "_") as your
hierarchy delimiter, if you must have D and D_F at the same time.