#git #rebase
#git #перебазирование
Вопрос:
У меня есть такое дерево в Git:
Теперь я хочу удалить коммит 8a22e56e5
, но сохранить все будущие изменения и слияния.
Команда git rebase -i -p ed36940de
, но она выдаст ошибку error: commit 1e5c47382 is a merge but no -m option was given
.
Как это сделать правильно?
Комментарии:
1. Вероятно, вам нужно
git filter-branch
для этого случая. Я не пишу ответ, потому что у меня нет времени проверять его самостоятельно.2. Для этого можно использовать новый (2.19-ish)
--rebase-merges
, но я не решаюсь рекомендовать его, и у меня действительно нет времени вдаваться в подробности.
Ответ №1:
Попробуйте и дайте нам знать, как это происходит:
git rebase -p --onto a6b8cff52 ed36940de 4510e25da
Я никогда не пытался сделать что-то подобное, но это то, что я бы попытался запустить.