Branch é uma etiqueta que anda junto com os seus commits novos.

Bateu a ideia de um canteiro de flores. Em vez de arriscar o jardim principal, você pendura uma etiqueta nova, flores, e trabalha nela.
Uma branch é só um nome que aponta para um commit. Quando você faz um commit novo, a branch em que você está anda junto. As outras ficam paradas.
O HEAD indica onde você está trabalhando agora. Com git switch -c flores você cria a branch flores e passa para ela. Se a ideia não der certo, volte para a main com git switch main.
git switch -c flores # cria a etiqueta flores e vai para ela git add . && git commit -m "Flores (1)" # commit D git commit -am "Mais flores (2)" # commit E
Atenção: HEAD → flores quer dizer: os próximos commits vão para a branch flores.