Как объединить большое количество коммитов, например, по 20 коммитов за раз?
2 ответа
git merge
принимает любую спецификацию коммита, так что вы можете сделать:
git merge ...
git merge origin/master~60
git merge origin/master~40
git merge origin/master~20
git merge origin/master
или даже git merge 357a887
чтобы объединить все до коммита 357a887 ...
Почему вы хотите это сделать? Мешение коммитов просто избавляется от истории.
Если вы действительно хотите это сделать, я бы выбрал «git rebase -i» (интерактивное перебазирование), которое позволяет вам безумно переписывать историю (переупорядочивать коммиты, разбивать их вместе, удалять некоторые, ...). Разделение коммитов может быть сделано, но это немного сложно.
Я бы пошел как:
git branch save # не хочу случайно потерять оригинал ...
git rebase -i HEAD ~ 20 # за последние 20 коммитов
# Редактировать предложенный шаблон по желанию, включая минимальную помощь
# Выход из редактора заставляет git делать, как было сказано, он может остановиться, если требуется ручное вмешательство