¿Cómo enumero todas las sucursales remotas en Git 1.7+?

Resuelto James A. Rosen asked hace 14 años • 22 respuestas

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).

James A. Rosen avatar Aug 13 '10 03:08 James A. Rosen
Aceptado

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 -rno funciona prueba:

git ls-remote --heads <remote-name>

Si git branch -rno funciona, entonces tal vez, como dice Cascabel , "ha modificado la especificación de referencia predeterminada, por lo que git fetchno git remote updaterecupera todas las remoteramas" .


[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 -rpara la gran mayoría (alrededor del 90% o 125 de 140 ).

Si git branch -rno funciona, la verificación git config --get remote.origin.fetchcontiene un comodín ( *) según esta respuesta

Dustin avatar Aug 12 '2010 21:08 Dustin

remote showmuestra 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)
Klas Mellbourn avatar Mar 26 '2013 06:03 Klas Mellbourn