Да, это одна из вещей, которую rebase может сделать для вас.Предполагая, что неправильно основанная ветвь называется foo
, и вы хотите изменить базу с master
на develop
(нужное вам направление не совсем понятно из вашего вопроса), вот как это сделать:
git checkout foo
git rebase --onto develop master
Страница руководства для git rebase
содержит гораздо больше подробностей о том, как работает rebase и что она делает, а также книга Git .
Самое важноездесь нужно знать, что если master
и develop
достаточно различаются, операция rebase может столкнуться с конфликтами, которые вам придется исправить вручную - для каждого отдельного коммита на foo
в худшем случае.Конфликты с базой могут быть немного нелогичными, поэтому не торопитесь с этим.:)