2017-02-09 3 views
2

я делаю следующий тестовый случай:Git журнал между tag..head не работает

я создал "MY-ФИЛИАЛ" филиал

Добавлен TAG:

git tag TAG1 MY-BRANCH 
git push --follow-tags 

Если я:

git describe --tags 

Я могу видеть TAG с длинным названием TAG1-5-g2fa83f b

У меня есть некоторые слияния из разных ветвей в «МОЙ ФИЛИАЛ» с использованием --squash.

Теперь я пытаюсь сделать все слияния с TAG1 до HEAD, но я ничего не получаю. Я ожидал увидеть как минимум 3 слияния. Ничего не приходит.

git --no-pager log TAG1..HEAD --parents --oneline --merges --abbrev=0 MY-BRANCH 

Я не вижу, что я делаю неправильно.


UPDATE:

В комментарии ниже, моя первая проблема, кажется, ветвь, что TAG был назначен. Фильтр --merge, похоже, не работает с --squash.

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

То, что я в основном пытаюсь сделать, это получить все слияния IN (сливается в мою текущую ветку) с последней TAG на HEAD. Одна из проблем заключается в том, что слияния выполняются с помощью -squash. Я не нашел ни одного фильтра для слияния -squash.

+2

Если вы запустите 'git log -decorate', вы сможете увидеть теги, прикрепленные к истории (растянувшись назад от HEAD). Вы можете увидеть свой тег? – Useless

+0

вы только что открыли глаза на одну вещь. когда я делаю git log -decorate, я могу видеть TAG1, но, похоже, он привязан к другой ветке «development», исходной. – Ventura

+0

Теперь, если я это сделаю: git --no-pager log TAG1..HEAD --parents --online development Я могу видеть свои коммиты и слияния – Ventura

ответ

0

Так что ваша проблема в том, что

git log --merges 

не считает сжато слияния обязан быть сливает because they aren't really merges. В частности, хотя git merge создает их, они не имеют два родителей, что является именно критерием, согласно documentation:

--merges

Печати только объединить фиксации. Это точно так же, как --min-parents=2.

+0

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

Смежные вопросы