git log получает диапазон коммитов, начиная с тега - PullRequest
3 голосов
/ 04 ноября 2011

Я хочу использовать git log, чтобы получить список изменений, начиная с тега и возвращаясь, скажем, 6 коммитов

git log --format="%h %ad %d %an: %s" --tags -n 6 --date=short

это даст мне последние 6 коммитов, но в идеале я бы хотелполучить диапазон, который находится в прошлом;учитывая следующее

            x---y(tag101)---z---branch
           /
aa---bb---a---b---c---d---e---f---g(tag102)---h---HEAD

возможно ли получить журналы для tag101 и обратно 6 коммитов

y(tag101)
x
a
bb
aa

или для tag102

g(tag102)
f
e
d
c
b

большую часть времени, когдаЯ пытаюсь получить эту информацию. Я на самом деле проверяю тег и в отдельном состоянии HEAD

Я пробовал несколько разных вещей, таких как

git log tags/tag101..96c06be --format="%h %ad %d %an: %s" --tags -n 6 --date=short

, кажется, это просто возвращаеткоммиты, начиная с последнего выполненного, игнорируя указанный тэг

Ответы [ 2 ]

2 голосов
/ 04 ноября 2011

Вы должны иметь возможность просто

git log -6 <tag name>

Затем добавить любые другие квалификаторы, которые вы хотите.

1 голос
/ 04 ноября 2011

Попробуйте git log --first-parent --oneline -n 6 yourtag, модифицированный в соответствии с вашими потребностями. Из руководства пользователя Git :

- первый родителем

Следите только за первым родительским коммитом, увидев коммит слияния. Эта опция может дать лучший обзор при просмотре эволюции конкретной ветки темы, потому что слияния с веткой темы имеют тенденцию только к адаптации к обновлению апстрима время от времени, и эта опция позволяет вам игнорировать отдельные коммиты, внесенные в Ваша история таким слиянием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...