Git: enumera todos los cambios no fusionados en git


125

Creando una rama para varios temas, y no eliminándolos regularmente cuando ya no los necesito, ahora he terminado con unas 50 ramas;)

Intenté eliminar ramas y algunas de ellas tienen cambios no fusionados.

Lo que quiero es la capacidad de ver exactamente qué cambios hay en cualquier rama de mi repositorio que no están en el maestro. Hay una manera de hacer eso

Gracias por adelantado.

Respuestas:


223

Para enumerar las ramas con confirmaciones no fusionadas en master:

git branch --no-merged master

Para enumerar las confirmaciones relevantes:

git cherry -v master <branch>

6
"git branch --no-merged master" no muestra ramas remotas - ¿pistas para verlas también?
Peter Toft

23
Agregue la -abandera para incluir ramas remotas.
Gawi

Si está dando un error u, intente reemplazarlo masterpor origincomo aguas arriba.
CodeFarmer

2
tenga en cuenta que las ramas fusionadas por squash & merge seguirán mostrando diferencias, incluso si no hay ninguna.
Michael Scott Cuthbert

Agregar -aparámetro mostrará las ramas locales y remotas y con -rmostrará solo las ramas remotas.
pafivi

26

Me encontré con esta pregunta cuando intentaba recordar la sintaxis de ...

git log <branch> --not master --stat

Esto mostrará confirmaciones a <branch> que no se han fusionado con master. --Stat incluirá los archivos que se cambiaron con las confirmaciones. También puede usar esto para comparar dos ramas cualesquiera reemplazando master con un nombre de rama diferente.


-5

Es bastante fácil obtener una descripción general de sus sucursales con gitk.


11
No si tienes más de 20 sucursales
Peter Toft
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.