repositorio remota rama origin example cambiar actualizar git github branch remote-branch

origin - ¿Cuándo actualiza git la lista de ramas remotas?



git push example (6)

Usando git branch --all muestra todas las ramas remotas y locales . ¿Cuándo actualiza git esta lista? En tirón / empuje? ¿Y cómo actualizarlo usando git bash ?

¡Muchas gracias a todos!


Creo que si ejecuta git branch --all desde el bash que 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 ramas 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 ejecute git branch --all y no vea una nueva rama remota que apareció después de la última vez que buscó o extrajo.

Para asegurarse de que su lista de sucursales local y remota esté actualizada, puede hacer una git fetch antes de ejecutar 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, suponga que hay una rama en la feature llamada remota que ha extraído al menos una vez en su Git local. Verá el origin/feature como una rama cuando ejecute git branch --all . Pero esta rama es en realidad una rama local de Git. Cuando haces git fetch origin esta rama de seguimiento se actualiza 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.


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 debería usarse.

Establecer git config remote.origin.prune true hace que --prune sea ​​automático, en ese caso solo git fetch también eliminará las ramas remotas obsoletas de la copia local. Consulte 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 https://.com/a/54484443/869951 para eso.


Para mostrar todas las ramas locales y remotas que Git (local) conoce

git branch -a

Para actualizar la lista local de sucursales remotas:

git remote update origin --prune


Si está utilizando Eclipse y desea ver nuevas sucursales desde arriba;

En la perspectiva de Git, haga clic con el botón derecho en el repositorio de git y luego elija "Recuperar de Upstream". Esto busca nuevas ramas remotas.


Si está utilizando Eclipse,

  1. Abrir "Repositorios Git"
  2. Encuentra tu repositorio.
  3. Abra "Ramas" y luego "Seguimiento remoto".

Todos deberían estar allí. Haga clic derecho y "pagar".


Use git fetch para obtener todas las ramas creadas más recientemente.