TLDR : git log origin/master --no-merges
видасть вам журнал основних даних та виключить усі об’єднані коміти (у цьому випадку x, y, z)
Оригінальні бали
Існує ще один загальний спосіб зробити це, який не покладається на --first-parent
який буде корисним у певних ситуаціях .. за допомогою фільтрів виключення гілок
git log origin/topic ^origin/master
Це дасть вам журнал origin/topic
усіх origin/master
видалених комітів.
Ви також можете додати, в --no-merges
якому буде приховано коміти злиття, які ви можете або не хочете.
Ще одна зручна порада - використовувати, shortlog
замість log
чого, ви отримаєте більше скороченого резюме, який може бути корисним для приміток до випуску або повідомлень про те, що є у гілці.
Оновлення
Після повторного прочитання цього ви насправді хотіли б майже зворотне те, що я розмістив; однак це в кінцевому підсумку виключає все, що знаходиться на master і foo ( git log origin/master ^origin/foo
). Однак ви також можете отримати те, про що просите (приховати всі коміти, що входять до об'єднань)git log origin/master --no-merges
D
іZ
входив до нього?