Я предполагаю, что хеш коммита git (5743a31610d38064af35573b91e3bbe39d808b9b) всегда будет отображаться в 0 или 1 ветвях git?
Это плохое предположение. В типичном репозитории есть один коммит - корневой коммит - который есть в каждой ветке.
Тем не менее, противоположное направление: по имени (имя ветви или тега или, по сути, любой ссылке, идентифицирующей коммит) вы можете найти (единственный) коммит, названный по этому имени. Для этого используйте git rev-parse <em>name</em>^{commit}
.
Хеш коммита однозначно идентифицирует этот конкретный коммит, и вы можете найти все имена веток или тегов, которые позволяют вам достичь этого коммита, пройдя по графику от одного коммита, который идентифицирует данная ветвь или тег:
git branch --contains <hash>
git tag --contains <hash>
Контекст: я создаю несколько журналов изменений развертывания devops, чтобы мы могли отслеживать то, что мы изменили - мне интересно, стоит ли называть выпущенные ветки git или просто помещать туда хеш git commit, и мы можем отменить поиск имени ветви, если мы действительно хотим?
Обычный подход здесь заключается в создании имени тега для идентификации конкретного коммита, который был передан конкретному пользователю. Поскольку тег именует один единственный объект (обычно коммит), и вы имеете полный контроль над написанием тега, это имеет тенденцию работать особенно хорошо.