Я работаю в SourceTree и пытаюсь сдвинуть коммит ветки в другую ветку. Мне сказали, что я могу раздавить, перейдя в интерактивную перебазировку. Я пытаюсь это сделать. Я получаю это сообщение:
Если я просто принимаю сообщение о коммите, оно ничего не делает (я ожидаю, что появится диалоговое окно rebase). Я предполагаю, что он пытается перебазировать с 93a74a2e на 93a74a2e на 93a74a2e (т.е. перебазировать один коммит в себя). Поскольку существует только один коммит, он показывает, что делать нечего, поэтому он просто заканчивается.
Ветка, которую я хочу раздавить, синяя ниже:
Из-за этого слияния с красной веткой прямо под головой я не могу ничего перебазировать (и, следовательно, раздавить) до 93a74a2e?
Что если я захочу раздавить все в синей ветви между прошлым коммитом (не показано на снимке экрана ветви) и головой, а затем объединить этот сдавленный коммит (ТОЛЬКО сдавленный коммит) с другой веткой (также не показана)?
Я делал это раньше в командной строке следующим образом:
git checkout destinationBranch
git merge --squash sourceBranch && git commit -m ‘squash merging from sourceBranch’
Но он останавливается перед тем, как принять его, и просит меня сделать это отдельным шагом. Это привело (я думаю) к тому, что в графе ветвей SourceTree не произошло слияния (я думаю, что он просто рассматривал коммит как изменения в ветке, а не слияние). Так что на этот раз я пытаюсь через SourceTree.