У меня есть две ветки, мастер и feature1. Я работал над feature1, когда понял, что мне нужно работать над чем-то другим, не связанным. К сожалению, я забыл разветкиться у мастера и вместо этого создал свою ветку feature2 из feature1. Теперь я хочу объединить feature2 в master, но не могу, потому что в этой ветке есть части feature1.
Как удалить функцию 1, связанную с ветвью feature2? Включает ли это перезарядку?
Я чувствую, что если бы я мог изменить начальную контрольную точку функции2 на то, где находится мастер, это может помочь, но понятия не имеет, как это сделать.
EDIT:
Спасибо за ответы! Я попытался переустановить в соответствии с решением @Mark, но понял, что история сложнее, чем я изначально думал. функция 2 была объединена с другими ветвями функций, а мастер был объединен в feature2 в одной точке. Есть также дополнительные коммиты на мастере, которые не связаны с feature2. Все по-прежнему локально.
Действительно, моя история больше похожа на это:
A - B - C - D - - - - - - - - - - - - - L - M master
|
| - I - J - K feature2
\ / \
- E - F - G - H - - - - - -N - O - P feature1
И я хочу это:
A - B - C - D - - - - - - - - - - L - M master
|\
| - - - - - I - J - K feature2
\ \
- E - F - G - H - - - N - O - P feature1
Я также пробовал:
git rebase --onto 1524b824cfce5856a49e feature1 feature2
// 1524b824cfce5856a49e == D
Но это просто устанавливает функцию имени ветки 2, указывающую на 1524, и оставляет коммит I, J, K со своими оригинальными родителями.