/ / Cómo encontrar ramas locales de git que se hayan eliminado de master - git

Cómo encontrar las ramas de git locales que se han eliminado de master - git

En nuestro flujo de trabajo, las ramas de desarrollo que están listas para la producción se envían al repositorio de seguimiento remoto donde se fusionan en master. La rama se elimina cuando pasan las pruebas.

He sido malo al eliminar mi versión local de esas ramas de desarrollo, así que ahora tengo muchas ramas locales que no tienen una rama correspondiente en origen.

¿Hay alguna forma rápida de encontrar qué ramas de mi repositorio ya se han eliminado del repositorio remoto?

Respuestas

7 para la respuesta № 1

Encontrar y eliminar sucursales locales bajo referencias / cabezas

Suponiendo que el póster original significa que quiere eliminar sucursales locales en refs/heads y no ramas de seguimiento remoto bajo refs/remotes/origin, para encontrar ramas que ya se han fusionado origin/master, simplemente use lo siguiente:

# Fetch latest copy of origin/master
$ git fetch origin

# Find merged branches
$ git branch --merged origin/master

La salida le mostrará ramas que se han fusionado nto origin/mastery, por lo tanto, es seguro eliminarlos con git branch -d <branch>. Desde el Documentación oficial de Linux Kernel Git para git branch:

"- combinado" se utiliza para encontrar todas las ramas que se pueden eliminar de forma segura, ya que esas ramas están completamente contenidas por HEAD.

Eliminar ramas de seguimiento remoto en referencias / controles remotos / origen

Si, por otro lado, el póster original significaba que quería eliminar sus ramas de seguimiento remoto, simplemente pasa el -p o --prune banderas para git fetch:

$ git fetch -p origin

Desde el Documentación oficial de Linux Kernel Git para git fetch:

Después de buscar, elimine cualquier rama de seguimiento remoto que ya no exista en el control remoto.


2 para la respuesta № 2
git fetch -p

Del manual:

-p, --prune Después de buscar, elimine cualquier rama de seguimiento remoto que ya no exista en el control remoto.