Как можно получить все имена некоторых веток удаленного происхождения?
Я начал с опций --remote --list
, но получил избыточное сообщение origin/HEAD -> origin/master
и ответвления из другого источника.
$> git branch --remote --list
origin/HEAD -> origin/master
origin1/develop
origin1/feature/1
origin1/feature/2
origin1/feature/3
origin1/master
origin2/develop
origin2/feature/1
origin2/feature/2
origin2/master
Ветки определенного происхождения могут быть сопоставлены с опцией <шаблон>
, но избыточное сообщение все еще присутствует. На самом деле этот шаблон не совсем правильный, потому что имя некоторого источника может быть подстрокой имени другого источника или даже некоторой ветви.
$> git branch --remote --list origin1*
origin1/HEAD -> origin/master
origin1/develop
origin1/feature/1
origin1/feature/2
origin1/feature/3
origin1/master
Я ищу список имен веток origin1
, любое из них я мог бы использовать для команды git checkout
. Примерно так:
develop
feature/1
feature/2
feature/3
master
Важно, чтобы это было сделано без grep
, sed
, tail
или даже ghc -e
оберток , только с истинной мощностью git
из-за их небезопасности и изменчивости.