Подтвердить что ты не робот

Git: создана новая ветка из неправильной ветки

Я обычно создаю новую ветку из разработки

git checkout -b new-feature develop

то после последнего коммита я снова объединился для разработки

git checkout develop
git merge new-feature

но на этот раз я создал new-feature2 brach из new-feature, и теперь я не могу слиться с develop.

Есть ли способ переключить родительский new-feature2 на develop?

(Файлы, над которыми я работал, были той же версией, что и в develop, поэтому это не должно требовать слияния.)

4b9b3361

Ответ 1

как насчет создания патча, проверка на ветку develop и применение патча?

git checkout new-feature2

git format-patch new-feature

git checkout develop

git am name-of-the-patch.patch

Ответ 2

Вы можете перегрузить свою функцию на основную базу:

git checkout new-feature2  
git rebase --onto develop new-feature new-feature2
# rebase the stuff from new-feature to new-feature2 onto develop branch

или сделайте это вручную, используя вишневый выбор

git checkout develop
git log --oneline new-feature..new-feature2 
# for every commit call:
git cherry-pick <commit-id> # note, newer versions of cherry-pick allow multiple commits at once

Ответ 3

Вы видели интерактивную перезагрузку?

git rebase -i develop

- довольно простое решение - оно отобразит все ваши фиксации из этой ветки. Просто удалите строки "pick" из нежелательной ветки.

Ответ 4

Вы также можете использовать git diff и git apply:

git diff new-feature..new-feature2 | git apply -