Использование git diff --shortstat my_branch master
- отличный способ рассказать, сколько файлов изменяется, а также вставки и удаления. Я прочитал git diff documentation, но не смог найти способ сообщить количество коммитов между my_branch
и master
, Это существует?
Как я могу подсчитать количество фиксаций между двумя ветвями?
Ответ 1
Я думаю, вы могли бы попробовать:
git log --online mybranch ^ master
Для точного подсчета:
git log --online mybranch ^ master | wc -l
Должна предоставить вам необходимую информацию.
Ответ 2
Я нашел это намного проще:
git rev-list --count my-branch ^master
Ответ 3
Другой вариант. Хеши/число - это просто примеры
$ git checkout my_branch
$ git cherry master
+ 950b187c4b28844680df7008cfa3b348c1a46016
+ 109e427cbe84c3c8fc0ac2fbfb5120bcc2511933
+ 9bc217c0bcabbd6aa4ba88bbaaad23805994f90d
+ 74e054614a1bb1c442fbcf53926dcb910097321c
+ b34ae1ce8a58e0cbdbe1657ebca81a3036d7c72d
Дает список хэшей фиксации, которые находятся в my_branch, но не в master
$ git checkout my_branch
$ git cherry master | wc -l
5
Дает количество коммитов, которые находятся в my_branch, но не в master
Подробнее о git cherry здесь
Ответ 4
Я не мог получить etech ответ на работу, но это работает для меня на OS X:
git rev-list --count master..my-branch
my-branch
может быть опущен для изменений в текущей ветке.
Ответ 5
Это дает мне количество коммитов, которые я сделал для branch_being_merged_in
, так как ветвление от branch_A
:
git log --pretty =% H branch_A..branch_being_merged_in | wc -l