Я создал ветвь AB из ветки A, я через некоторое время сменил новые изменения с A на AB, также выполнил некоторую «незавершенную работу», которая выполняет AB;Squash/fixup совершает слияния
Теперь я хочу оставить только одно сообщение с сообщением firs, но сохранить там все данные из слияний и т. Д .;
Я сделал git log --pretty=oneline
a last commit
b merge branch from A
c merge pull request from A
d meger branch from A
e WIP commit
f WIP commit
g WIP commit
h first commit
Я пытаюсь сделать различные комбинации git rebase -i {commit}
, но каждый раз, когда я теряю некоторые коммиты
Как сделать это в правильном направлении?
Вы можете сквош фиксировать один за другим (отдельные прогоны перебора). Это вы можете легко проверить результат после каждого шага. – arkascha
Проблема @archascha, которая объединяется, не отображается в инструменте git-rebase-todo –
У вас есть опция --preserve-merges with git rebase --interactive, но, как сказано в документе, есть риски ошибок (см. Конец страница): https://git-scm.com/docs/git-rebase –