Який найкращий спосіб отримати журнал комітетів на гілці з моменту її розгалуження від поточної гілки? Моє рішення поки що:
git log $(git merge-base HEAD branch)..branch
Документація на git-diff вказує, що git diff A...B
це еквівалентно git diff $(git-merge-base A B) B
. З іншого боку, документація на git-rev-розбір вказує на те, що r1...r2
визначено як r1 r2 --not $(git merge-base --all r1 r2)
.
Чому вони різні? Зауважте, що git diff HEAD...branch
дає мені різницю, яку я хочу, але відповідна команда журналу git дає мені більше, ніж те, що я хочу.
Припустимо, що на фотографіях:
x --- y --- z --- гілка / --- a --- b --- c --- d --- e --- ГЛАВА
Я хотів би отримати журнал, що містить символи x, y, z.
git diff HEAD...branch
дає ці зобов’язання- однак
git log HEAD...branch
дає x, y, z, c, d, e.