Git - фиксация только моих изменений в удаленной ветке
Я использую раздвоенный репозиторий spree-commerce для своего проекта.
До сих пор я работал и сливал свои изменения в origin/2-3-stable, и все было превосходно.
Проблема в том, что SpreeCommerce выпустил новую версию (2-4) и создал для нее новую ветку (2-4-stable):
объединение моей работы с недавно созданной веткой 2-4-stable означает не только объединение моих собственных изменений, но также всех изменений и конфликтов между двумя версиями.
Iv'e пытался создать новую ветку, основанную на 2-3, и выбрать мои конкретные коммиты, но когда я пытаюсь объединить их с 2-4, я получаю множество конфликтов, совсем не связанных с этими коммитами.
Могу ли я в любом случае объединить только мои коммиты в новую ветку без необходимости разрешения несвязанных конфликтов?
2 ответа
Вы можете переназначить ветку 2.4 вверх по течению на вашу ветку, то есть:
git rebase origin/2-4-stable
Или, если ваши изменения происходят за несколько коммитов, вы можете оформить новую ветку с версии 2.4 (а не с 2.3, как вы сделали), и cherry выберет ваши коммиты:
git checkout -b my-branch-on-top-of-2-4 origin/2-4-stable
git cherry-pick COMMIT
...
Вы можете попытаться ограничить конфликты, выполнив git rebase --interactive origin/2-4-stable
, затем удалите все строки, где вы не автор.