Git: перечислить все не объединенные изменения в git

126

Создавая ветки для разных тем, а не удаляя их регулярно, когда они мне больше не нужны, у меня теперь осталось около 50 веток;)

Я попытался удалить ветки, и в некоторых из них есть не объединенные изменения.

Я хочу иметь возможность точно видеть, какие изменения есть в любой ветке моего репо, которых нет в мастере. Есть ли способ сделать это

Заранее спасибо.

Лакшман Прасад
источник

Ответы:

224

Чтобы перечислить ветки с коммитами, не объединенными в мастер:

git branch --no-merged master

Чтобы перечислить соответствующие коммиты:

git cherry -v master <branch>
gawi
источник
6
"git branch --no-merged master" не показывает удаленные ветки - ключи, чтобы увидеть их тоже?
Питер Тофт
23
Добавьте -aфлаг для включения удаленных веток.
gawi
Если выдает ошибку u, попробуйте заменить masterна originas upstream.
CodeFarmer
2
обратите внимание, что ветви, объединенные с помощью squash & merge, все равно будут показывать различия, даже если их нет.
Майкл Скотт Катберт
Добавление -aпараметра покажет локальные и удаленные ветки, а с -rпокажет только удаленные ветки.
pafivi
26

Я столкнулся с этим вопросом, когда пытался вспомнить синтаксис ...

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

Это покажет коммиты в <ветку>, которые не были объединены в мастер. --Stat будет включать файлы, которые были изменены с помощью коммитов. Вы также можете использовать это для сравнения любых двух ветвей, заменив master на другое имя ветки.

Matt
источник
-5

Получить обзор ваших веток довольно легко с помощью gitk.

tamasd
источник
11
Нет, если у вас> 20 филиалов
Питер Тофт