¿Cómo es posible obtener todos los nombres de algunas ramas de origen remoto?Git lista de nombres de ramas de control remoto específico
Comencé desde --remote --list
opciones, pero obtuve el mensaje y las ramas redundantes origin/HEAD -> origin/master
del otro origen.
$> 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
Ramas de origen específica podrían coincidir con <pattern>
opción, pero el mensaje redundante sigue ahí. En realidad, ese patrón no es realmente correcto, porque el nombre de algún origen podría ser una subcadena de otro nombre de origen, o incluso alguna rama.
$> git branch --remote --list origin1*
origin1/HEAD -> origin/master
origin1/develop
origin1/feature/1
origin1/feature/2
origin1/feature/3
origin1/master
Lo que estoy buscando es una lista de nombres de rama de origin1
, cualquiera de ellos que podría utilizar para git checkout
comando. Algo así:
develop
feature/1
feature/2
feature/3
master
Es importante que se debe hacer sin grep
, sed
, tail
o incluso ghc -e
envoltorios, sólo que con cierto git
poder, debido a su variación y unsafeness.
Luce increíble. Gracias por una respuesta exhaustiva. –
Podría haber respondido esto también, pero ¿qué sucedió con la regla "no sed"? jajaja, cualquiera que sea – KurzedMetal
@KurzedMetal verdadero, pero justifiqué cuidadosamente el uso de 'sed' usando solo el comando de plomería, en lugar de un comando de porcelana como' git branch'. Ver por ejemplo http://stackoverflow.com/questions/2978947/how-to-list-all-the-log-for-current-project-in-git/2979124#2979124 o http://stackoverflow.com/questions/2976665/git-changelog-day-by-day/2976776 # 2976776 – VonC