'_' is allowed in branch names. On the whole this will allow things to work as expected. People do use underscores in branch names on their local machines, and to quietly change them would cause confusion and mayhem and an end to order as we know it.
The UI validators should be changed to allow underscores in branch names, and we should use this validator consistently in all locations.
OK, here is the definitive answer:
'_' is allowed in branch names. On the whole this will allow things to work as expected. People do use underscores in branch names on their local machines, and to quietly change them would cause confusion and mayhem and an end to order as we know it.
The UI validators should be changed to allow underscores in branch names, and we should use this validator consistently in all locations.