Я немного расстроен тем, что вы спрашиваете во время чтения вопроса.
Если вы действительно хотели получить только корень ветки, я думаю, вы хотели что-то вроде
git rev-list --merges --boundary branch1 branch2 | tail -1
Если вы хотите убедиться, что ветки действительно связаны
git rev-list --left-right --merges --boundary branch1 branch2 |
grep '^-' |
tail -1 |
cut -c2-
Однако, шансы довольно высоки, что вы хотите
git merge-base branch1 branch2
Кроме того, в следующий раз, когда вам понадобятся красивые диаграммы «ласточкин хвост», это поможет:
git show-branch # [--mergebase] branch1 branch2
Вы можете получить немного больше контроля, используя git log:
git log --graph --left-right --merges --boundary HEAD MP26/MP26
> commit 0118d9979d1d27f08fa14cddfffa3e9c2cd5fe9c
|\ Merge: 8958c53 e1cd319
| | Author: Seth Heeren <seth.heeren@xxxx>
| | Date: Fri Feb 18 12:05:49 2011 +0100
| |
| | Merge branch 'MP26' into tmp
| |
| o commit e1cd31926d01c08092a95226ac7b49bbea19ac92
| Author: Seth Heeren <seth.heeren@xxxx>
| Date: Thu Feb 17 16:39:17 2011 +0100
|
| xxxxx
|
o commit 8958c534b034cbb28bf1e853de0bfec0a9b0ddbb
Author: Seth Heeren <seth.heeren@ocwduo.nl>
Date: Fri Feb 18 12:05:30 2011 +0100
fixup
Журнал Git также поддерживает опцию --decorate
, если вам нравится отображение названия ветви с git show-branch