我正在做一个修补程序,当我创建分支时,我忘了从experminetal分支切换回来开发之前。
experiment -> hotfix
develop
什么时候应该
experiment
develop -> hotfix
如何将分支移动到开发中并从实验分支中删除它?我已经看过这样的一些问题,但他们似乎认为你仍然想要包括我的实验中的内容。我仍然需要保持实验的完整性。
答案 0 :(得分:3)
如果执行修补程序分支的非快进更新不是问题(如果您想这样做通常需要注意),您只需重写修补程序分支以将其更改应用于开发的提示而是分支:
git checkout hotfix
git rebase --onto develop experiment
这意味着:查找从修补程序可以访问的所有提交,但不能从实验中找到(即修补程序分支的唯一提交)并将它们移动到develop分支上。换句话说,将要移动的提交序列的基础定义为实验分支。 --onto
参数指定提交序列的新基础,即第一次提交的新父提交被重新命名。
如果重写已发布分支的历史记录是不可接受的,只需根据开发创建一个新分支并复制您的提交。
git checkout -b hotfix2 develop
git cherry-pick experiment..hotfix