El uso git branch --all
muestra todos los controles remotos las sucursales y locales . ¿Cuándo actualiza Git esta lista?
En tirón / empuje? ¿Y cómo lo actualizo con Git Bash ?
git
github
branch
remote-branch
BendEg
fuente
fuente
git ls-remote
podría ser interesante aquí.Respuestas:
Para actualizar la lista local de sucursales remotas:
Para mostrar todas las sucursales locales y remotas que Git (local) conoce
fuente
git remote update origin --prune
es lo que estaba buscando graciasgit remote update
, y la respuesta aceptada, que usagit 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 ejecutarlagit 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 llamadafeature
que ha extraído al menos una vez en su Git local. Verás unaorigin/feature
lista como una rama cuando corrasgit branch --all
. Pero esta rama es en realidad una rama local de Git. Cuando lo hagagit 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.fuente
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 personasEl 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 casogit 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.
fuente
git fetch -p
Use
git fetch
para buscar todas las ramas creadas más recientemente.fuente
git fetch
no cambió nada para mí con git 2.17.1. ¿Qué versión y opciones has estado usando?--prune
ogit config remote.NAME.prune true
para esto para resolver la pregunta de OPSi 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.
fuente
Si está utilizando Eclipse,
Todos deberían estar allí. Haga clic derecho y "pagar".
fuente