Слияние считается расположенным слева от ...
, поэтому в выводе графика оно помечено <
, а не >
.
Для устранения слиянийиз git rev-list
или git log
выходных данных добавьте --no-merges
или --max-parents=1
(это два варианта написания одного и того же параметра).
Редактировать, повторно редактировать вопрос: для "git cherry" и аналогичных целей,каждый merge коммит считается уникальным.То есть он никогда не будет таким же, как любой другой коммит, независимо от того, является ли этот коммит или нет слиянием.(Это происходит по нескольким внутренним причинам, наиболее значительным из которых является то, что в коммите слияния имеется более одного родителя. Чтобы вычислить идентификатор патча , Git необходимо сравнить дочерний коммит с одним родителем.)
(Правка 2: приведенное выше утверждение может быть неправильным: git show <merge> | git patch-id
вычисляет идентификатор патча для комбинированного различий слияния. Таким образом, два слияния, которые создают идентичные объединенные различия, могут давать идентичные идентификаторы патчей и, следовательно, считаться "одинаковыми""на git cherry
. Однако в большинстве случаев комбинированный diff для коммита слияния не будет совпадать с обычным, а не комбинированным diff для любого коммита, который он объединяет, что означает, что на практике слияния будут выглядеть уникальнымив git cherry
или git rev-list --cherry-mark
или аналогичном.)