git коснулся коммитов, которые я не собирался или ожидал коснуться
Простое решение: измени свои ожидания. Сделайте это, понимая git:
Фундаментальный факт о git: коммиты не могут быть изменены.
Rebase / cherry-pick делает все новые коммиты . Получающиеся эффективные изменения в новом коммите те же, что и в старом коммите, но это новый коммит с новым ha sh и новым обратным указателем - и новым автором.
Итак каждый коммит в интерактивном ребазе, для которого вы сказали pick
, генерирует новый коммит, и это те коммиты, которые вы сейчас видите. Старые коммиты все еще находятся в репо, без изменений, и вы можете использовать их SHA, чтобы увидеть их. Но коммиты в результате ребазирования - это новые и разные коммиты.
Во время интерактивного ребазинга вам была предоставлена возможность, если вы этого захотели, переопределить настройку автора каждого нового коммита по мере его формирования. Но вы не воспользовались этой возможностью.
Сноска. Если вы достигнете самого низкого уровня, вы можете сделать что угодно, вручную, для фиксации. Вы можете увидеть коммит как текст и изменить этот текст. Так что вполне возможно сменить автора этих новых коммитов по факту. Тем не менее, вы все еще фактически не изменяете коммит, даже если это так кажется; вы делаете новый коммит, который функционально заменяет старый, который остается.