Git Rebase Interactive: методы и примеры изменения истории коммитов

Команда «git rebase -i HEAD~2» используется для выполнения интерактивной перезагрузки в Git. Он позволяет вам комбинировать, редактировать или удалять коммиты в истории коммитов. Вот объяснение команды и некоторых методов, которые вы можете использовать с примерами кода:

  1. Сжатие коммитов:
    Сжатие коммитов позволяет объединить несколько коммитов в один. В интерактивном редакторе перебазирования измените «pick» на «squash» или «s» для коммитов, которые вы хотите сжать.

    Пример:

    pick abc123 Commit 1
    squash def456 Commit 2
    squash ghi789 Commit 3
  2. Изменение порядка коммитов.
    Вы можете изменить порядок коммитов с помощью интерактивного перебазирования. В редакторе просто измените порядок строк выбора, чтобы изменить порядок фиксации.

    Пример:

    pick ghi789 Commit 3
    pick def456 Commit 2
    pick abc123 Commit 1
  3. Редактирование коммитов.
    Интерактивное перебазирование позволяет изменять сообщения коммитов или вносить изменения в содержимое коммитов. В редакторе измените «pick» на «edit» или «e» для коммитов, которые вы хотите изменить. После внесения изменений используйте «git commit –amend», чтобы обновить коммит.

    Пример:

    pick abc123 Commit 1
    edit def456 Commit 2
    pick ghi789 Commit 3
  4. Удаление коммитов.
    Вы можете удалить коммиты из истории коммитов с помощью интерактивного перебазирования. В редакторе удалите строки «выбрать», соответствующие коммитам, которые вы хотите удалить.

    Пример:

    pick abc123 Commit 1
    # Removed def456 Commit 2
    pick ghi789 Commit 3