Полезные флаги для git rebase
Команда git rebase
поддерживает несколько флагов, которые позволяют контролировать процесс rebase
и изменять его поведение. Вот основные флаги, которые можно использовать с командой git rebase
.
Основные флаги команды git rebase
-i
или --interactive
Включает интерактивный режим rebase, который позволяет изменять, объединять, удалять коммиты и изменять сообщения коммитов.
git rebase -i <base>
-p
или --preserve-merges
Сохраняет коммиты слияния (merge commits) при выполнении rebase.
git rebase -p <base>
-r
или --rebase-merges
Перестраивает коммиты слияния при выполнении rebase. Это позволяет изменять коммиты слияния так, как если бы они были обычными коммитами.
git rebase -r <base>
--onto
Позволяет указать новую базу для ветки, отличную от базовой ветки. Полезно для более сложных сценариев rebase.
git rebase --onto <newbase> <upstream> <branch>
--continue
Продолжает процесс rebase после разрешения конфликтов или редактирования коммита.
git rebase --continue
--abort
Прерывает процесс rebase и возвращает репозиторий в состояние до начала rebase.
git rebase --abort
--skip
Пропускает текущий коммит и продолжает процесс rebase. Используется, если коммит невозможно применить без конфликтов.
git rebase --skip
-X
или --strategy-option
Передаёт параметры выбранной стратегии слияния.
git rebase -X theirs <base>
-S
или --gpg-sign
Позволяет подписывать коммиты с использованием GPG.
git rebase -S <base>
--exec
Выполняет указанную команду после каждого коммита при выполнении rebase.
git rebase --exec "команда" <base>
-q
или --quiet
Уменьшает количество выводимых сообщений во время выполнения rebase.
git rebase -q <base>
-v
или --verbose
Увеличивает количество выводимых сообщений во время выполнения rebase.
git rebase -v <base>
Примеры использования
-
Интерактивный rebase последних 5 коммитов:
git rebase -i HEAD~5
-
Rebase текущей ветки на другую базу:
git rebase --onto new-base upstream-branch topic-branch
-
Продолжение rebase после разрешения конфликтов:
git rebase --continue
-
Прерывание rebase:
git rebase --abort
-
Rebase с параметром стратегии слияния:
git rebase -X theirs master
Теперь вы знаете основные флаги команды git rebase
и как они могут быть использованы для управления процессом rebase.