Respuestas:
Para actualizar la lista local de sucursales remotas:
git remote update origin --prune
Para mostrar todas las sucursales locales y remotas que Git (local) conoce
git branch -a
git remote update origin --prune
es lo que estaba buscando gracias
git remote update
, y la respuesta aceptada, que usa git fetch
, vea aquí
git fetch
no eliminó mi caché local de ramas remotas. Solo --prune
pude limpiarlo todo.
git config remote.origin.prune true
git remote prune origin
tiene el mismo efecto y escribes menos.
Creo que si corres git branch --all
desde Bash, la lista de sucursales remotas y locales que verá reflejará lo que su Git local "sabe" al momento de ejecutar el comando. Debido a que su Git siempre está actualizado con respecto a las sucursales locales en su sistema, la lista de sucursales locales siempre será precisa.
Sin embargo, para sucursales remotas este no tiene por qué ser el caso. Su Git local solo conoce las ramas remotas que ha visto en la última búsqueda (o extracción). Por lo tanto, es posible que pueda ejecutar git branch --all
y no ver una nueva rama remota que apareció después de la última vez que buscó o sacó.
Para asegurarse de que su lista de sucursales local y remota esté actualizada, puede hacer una git fetch
antes de ejecutarla git branch --all
.
Para obtener más información, las ramas "remotas" que aparecen cuando ejecuta git branch --all
no son realmente remotas; En realidad son locales. Por ejemplo, supongamos que hay una rama en el control remoto llamada feature
que ha extraído al menos una vez en su Git local. Verás una origin/feature
lista como una rama cuando corras git branch --all
. Pero esta rama es en realidad una rama local de Git. Cuando lo haga git fetch origin
, esta rama de seguimiento se actualizará con cualquier cambio nuevo desde el control remoto. Esta es la razón por la cual su estado local puede quedar obsoleto, porque puede haber nuevas sucursales remotas o sus sucursales de seguimiento pueden quedar obsoletas.
git fetch
hice.
git fetch
no funciona para mí, necesito agregar --prune
. Por cierto, no soy downvoter;)
git fetch
no elimina las ramas remotas eliminadas. Esa es probablemente la razón por la cual algunas personas
El OP no solicitó la limpieza de todos los controles remotos, sino de todas las ramas del control remoto predeterminado.
Entonces git fetch --prune
es lo que debe usarse.
Ajuste git config remote.origin.prune true
hace --prune
automático. En ese caso git fetch
, también podará ramas remotas obsoletas de la copia local. Vea también Poda automática con Git fetch o pull .
Tenga en cuenta que esto no limpia las sucursales locales que ya no están rastreando una sucursal remota. Consulte Cómo podar ramas de seguimiento locales que ya no existen en remoto para eso.
git fetch -p
Use git fetch
para buscar todas las ramas creadas más recientemente.
git fetch
no cambió nada para mí con git 2.17.1. ¿Qué versión y opciones has estado usando?
--prune
o git config remote.NAME.prune true
para esto para resolver la pregunta de OP
Si está utilizando Eclipse y desea ver nuevas sucursales desde arriba;
En la perspectiva de Git, haga clic con el botón derecho en un repositorio de Git y luego elija "Recuperar de Upstream". Esto busca nuevas ramas remotas.
Si está utilizando Eclipse,
Todos deberían estar allí. Haga clic derecho y "pagar".
git ls-remote
podría ser interesante aquí.