Это дает хорошее объяснение раздавливания нескольких коммитов:
http://git -scm.com / книга / а / Гит-Ветвление-перебазирование
но он не работает для коммитов, которые уже были переданы. Как раздавить последние несколько коммитов как в локальном, так и в удаленном репо?
РЕДАКТИРОВАНИЕ: Когда я делаю git rebase -i origin/master~4 master
, оставляю первый как pick
, устанавливаю остальные три как squash
, а затем выхожу (через cx cc в emacs), я получаю:
$ git rebase -i origin/master~4 master
# Not currently on any branch.
nothing to commit (working directory clean)
Could not apply 2f40e2c... Revert "issue 4427: bpf device permission change option added"
$ git rebase -i origin/master~4 master
Interactive rebase already started
, где 2f40 - коммит pick
. И теперь ни один из 4 коммитов не появляется в git log
. Я ожидал, что мой редактор будет перезапущен, чтобы я мог ввести сообщение коммита. Что я делаю не так?