Чтобы разделить коммит на несколько коммитов, используй git rebase в интерактивном режиме. Этот способ позволяет разбить один коммит на несколько меньших, более логичных коммитов.
Начни с выполнения команды интерактивного rebase, указав коммит, который хочешь разделить:
git rebase -i HEAD~n
Замени n на количество коммитов назад от текущей позиции.
В редакторе интерактивного rebase найди коммит, который нужно разделить, и измени его действие с pick на edit. Сохрани и закрой редактор.
Когда rebase дойдёт до обозначенного коммита, сбрось его командой:
git reset HEAD~1
Это уберёт все изменения из индекса коммита, но оставит изменения в рабочей директории.
Теперь, когда изменения сняты с индекса, ты можешь:
git statusgit addgit commitКогда создашь все нужные коммиты из сброшенных изменений, заверши rebase командой:
git rebase --continue
Этот способ помогает поддерживать более чистую историю коммитов, разделяя не связанные между собой изменения и улучшая читаемость и поддерживаемость кода для твоей команды.
С помощью git rebase -i HEAD~n действие edit позволяет тебе приостановить rebase на конкретном коммите, чтобы изменить его перед продолжением.
Новый — ещё не проверен сообществом
Вы