1

Как объединить большое количество коммитов, например, по 20 коммитов за раз?

2 ответа2

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 ...

1

Почему вы хотите это сделать? Мешение коммитов просто избавляется от истории.

Если вы действительно хотите это сделать, я бы выбрал «git rebase -i» (интерактивное перебазирование), которое позволяет вам безумно переписывать историю (переупорядочивать коммиты, разбивать их вместе, удалять некоторые, ...). Разделение коммитов может быть сделано, но это немного сложно.

Я бы пошел как:

git branch save # не хочу случайно потерять оригинал ...

git rebase -i HEAD ~ 20 # за последние 20 коммитов

# Редактировать предложенный шаблон по желанию, включая минимальную помощь

# Выход из редактора заставляет git делать, как было сказано, он может остановиться, если требуется ручное вмешательство

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .