方案: 在主分支上
git checkout target_branch
git checkout new_branch
git commit -m:" TARGET BRANCH TASK NUMBER,NEW BRANCH TASK NUMBER:Message"
git push origin new_branch
git checkout target_branch
git push origin target_branch
合并请求(目标 - target_branch )
据我所知, new_branch 并非由 target_branch 创建,因为我首先从 new_branch 然后才推送 target_branch (只是忘了)。
请帮助我,请在下一步做好:
我将和我的朋友一起在 target_branch 工作,我们将从中创建分支。
我现在需要从 target_branch 创建 new_branch 并删除旧 new_branch (我想,现在似乎是从master而不是从target_branch创建的)。
如何正确地执行此操作(对于Git历史记录)?
答案 0 :(得分:0)
要更改从new_branch
{或target_branch
签出的master
,您可以使用相同的方法:
git checkout target_branch
git cherry-pick target_branch..new_branch
git branch -f new_branch
git checkout new_branch
注意:强>
- 如果存在挑选冲突,您可以修改并保存冲突文件,然后使用git add .
和git cherry-pick --continue
。
- 如果您不希望在ew_branch
的顶部重新绑定n target_branch
,则可以使用git checkout <an history commit of target_branch>
,然后使用上述命令重新定位new_branch
。如下图所示,如果使用git checkout B,并且在上述命令之后,分支将如下所示:
# Original branch structure
A---B---C target_branch
D---E---F new_branch
# After rebase new_branch from commit B
A---B---C target_branch
\
D'---E'---F' new_branch
答案 1 :(得分:0)
要解决您的问题,请执行以下步骤:
您现在位于 target_branch ,让我们删除旧分支: new_branch
现在你&amp;您的朋友可以从 target_branch &amp;处理 new_branch