¿Cómo enumero todas las sucursales remotas en Git 1.7+?
Lo intenté git branch -r
, pero eso solo enumera las ramas remotas que he rastreado localmente. ¿Cómo encuentro la lista de los que no tengo? (No me importa si el comando enumera todas las ramas remotas o solo aquellas que no tienen seguimiento).
Para la gran mayoría [1] de los visitantes aquí, la respuesta correcta y más simple a la pregunta "¿Cómo enumero todas las ramas remotas en Git 1.7+?" es:
git branch -r
Para una pequeña minoría [1] git branch -r
no funciona. Si git branch -r
no funciona prueba:
git ls-remote --heads <remote-name>
Si git branch -r
no funciona, entonces tal vez, como dice Cascabel , "ha modificado la especificación de referencia predeterminada, por lo que git fetch
no git remote update
recupera todas las remote
ramas" .
[1] Al momento de escribir esta nota a pie de página en febrero de 2018, miré los comentarios y vi que funcionan git branch -r
para la gran mayoría (alrededor del 90% o 125 de 140 ).
Si git branch -r
no funciona, la verificación git config --get remote.origin.fetch
contiene un comodín ( *
) según esta respuesta
remote show
muestra todas las ramas en el control remoto, incluidas aquellas que no se rastrean localmente e incluso aquellas que aún no se han recuperado.
git remote show <remote-name>
También intenta mostrar el estado de las sucursales en relación con su repositorio local:
> git remote show origin
* remote origin
Fetch URL: C:/git/.\remote_repo.git
Push URL: C:/git/.\remote_repo.git
HEAD branch: master
Remote branches:
branch_that_is_not_even_fetched new (next fetch will store in remotes/origin)
branch_that_is_not_tracked tracked
branch_that_is_tracked tracked
master tracked
Local branches configured for 'git pull':
branch_that_is_tracked merges with remote branch_that_is_tracked
master merges with remote master
Local refs configured for 'git push':
branch_that_is_tracked pushes to branch_that_is_tracked (fast-forwardable)
master pushes to master (up to date)