Подтвердить что ты не робот

Git ветки списка, объединенные в ветку, но не в другую

Вот пример графика истории ветвей/фиксации:

A---  master
|\
| B-----G--------P feature2
|\       \        \
| -----F--J--L--O--Q integration
|\    /     /  /
| C--E--H--K  /    feature1
 \           /
  D---------M feature3

В обычных условиях мы объединяем интеграционную ветвь в мастер и делаем. Но... есть исключительные случаи, когда только одна конкретная функция должна быть объединена в master... ex: только feature1. В этом случае ветвь feature1 объединяется в master (commit R):

A-------------------------R   master
|\                       /
| B-----G--------P      /     feature2
|\       \        \    /
| -----F--J--L--O--Q  /       integration
|\    /     /  /     /
| C--E--H--K--/------         feature1
 \           /
  D---------M                 feature3

Вопрос: Мне нужна команда, которая сообщила бы мне, какие ветки объединяются в интеграцию, но не в master. Результат должен быть: feature2 и feature3.

Является ли перекрестная ссылка между этими двумя командами единственным способом?

git branch --no-merged master
git branch --merged integration

Или это может быть также команда, которая объединяет список в ветке интеграции, не присутствующей в master. Результат должен быть: J, O, Q

4b9b3361

Ответ 1

 comm -12 <(sort <(git branch --no-merged master)) <(sort <(git branch --merged integration))