Я работаю с рубиновым скриптом, который выполняет следующую команду git в данном репозитории git.
branches = `git branch -a --contains #{tag_name}`
Этот подход имеет некоторые недостатки с выводом команд (которые могут меняться в разных версиях git) и зависит от двоичной версии git на хост-компьютере, поэтому я пытался посмотреть, можно ли заменить эту команду с помощью надежно, но мне не удалось найти ничего подобного.
Возможно, в Rugged нет возможности реализовать флаг --contains
, но я думаю, что реализовать такое поведение должно быть довольно просто:
Учитывая любой git commit-ish (тег, коммит sha и т. д.), как получить (с помощью Rugged) список веток (как локальных, так и удаленных), который содержит этот коммит?
Мне нужно реализовать что-то вроде страницы показа фиксации github, т.е. tag xyz is contained in master, develop, branch_xx