Git: фиксирует по порядку слияния - PullRequest
1 голос
/ 12 марта 2019

Я написал скрипт на python, который повторяет последние 10 коммитов в моей основной ветке.Основная ветвь ограничена коммитом и может быть объединена только в.

Рассмотрим следующий сценарий.

Ветка 1 выполняет коммит в 10.00 с коммитами 1 и 2 Ветка 2 выполняет коммитв 11.00 с коммитами 3 и 4.

Я слил ветвь 2 перед веткой 1 в мастер.

Теперь, когда я печатаю коммиты при итерации, все равно печатаются 4 и 3, за которыми следуют 2 и 1.

Мне нужно выполнить итерацию в порядке последней фиксации, объединенной с мастером первой.То есть.Мне нужно это как 2, 1, 4 и 3. Это возможно?

1 Ответ

0 голосов
/ 12 марта 2019

Сортировка для git log:

  • --date-order
  • --author-date-order
  • --topo-order
  • --reverse

В вашем случае --topo-order выполнит работу:

> git log --topo-order --no-merges --format="%ad -- %s"
2019-03-12 18:05:02 -- c2 (topic1)
2019-03-12 18:04:59 -- c1 (topic1)
2019-03-12 18:05:22 -- c4 (topic2)
2019-03-12 18:05:19 -- c3 (topic2)
2019-03-12 18:04:47 -- commit on master
...