Git - список коммитов, но получить только последний коммит дня

Я хочу создать действительно простую статистику из моего кода. я использую git rev-list получить список всех коммитов обратно в историю. Но для моих целей интересен только последний коммит дня. Я хочу опустить все коммиты, которые предшествуют этому коммиту в любой конкретный день. Учитывая историю:

c1375e3 Nov 13 07:55:31
110d2ec Nov 13 07:41:47
30331dd Nov 12 21:23:47
431addf Nov 12 18:50:52
8a32d78 Nov 12 18:27:24
ace5a88 Nov 12 18:24:55

Я заинтересован только в коммитах 30331dd а также c1375e3, Как я могу получить такой список?

1 ответ

Решение

Вы можете передать вывод git rev-list команда, которую вы используете в awk:

git rev-list your_command | awk '{if(m!=$2 || d!=$3){m=$2;d=$3; print $1}}'

Конечно, это будет работать, только если список коммитов упорядочен по дате и времени, как показано в вашем примере.

Другие вопросы по тегам