Глядя на справочную страницу git-rebase
, я не видел диаграмм, которые выглядели бы так, как я хочу (за исключением того, что некоторые, кажется, делают обратное тому, что я хочу), и игра с --onto
не получила мне то, что я тоже хотел.
Дайте мне посмотреть, смогу ли я нарисовать диаграмму, подобную диаграмме со страницы руководства git-rebase
(вертикальные полосы слева позволяют правильно отформатировать Markdown):
| o-o-o-o-branch2
| /
| -o-o-A-master-o-branch1-o-o-my_WIP_branch
branch1
, вероятно, здесь на самом деле не важно, но я все равно включил его. То, что я хочу сделать, это получить (исключая '
s, которые обычно сопровождают git-rebase
диаграммы man-страниц):
| o-o-o-o-branch2-o-branch1-o-o-my_WIP_branch
| /
|-o-o-A-master
По сути, я хочу поставить свою работу my_WIP_branch
над работой branch2
, не сталкиваясь с конфликтами слияния, связанными с группой коммитов, помеченных A
. Есть ли какой-нибудь способ сделать это, кроме ручного выбора вишни каждого коммита по branch2
(или, по крайней мере, может быть, есть простой способ сделать это?)? Между прочим, будут конфликты слияния, поэтому в идеале это должна быть команда git или группа команд git, которые обрабатывают их изящно (например, git rebase
изящно обрабатывает их, git am
и git apply
нет).