从功能分支分支而不是开发分支



我正在做一个修补程序,当我创建分支时,我忘记在这样做之前从 experminetal 分支切换回开发。

   experiment -> hotfix
   develop

什么时候应该

   experiment
   develop -> hotfix
如何将分支移动到添加项

以将其从实验分支中删除?我见过一些这样的问题,但他们似乎假设你仍然想包括我的情况是实验。不过,我仍然需要保持实验的完整性。

如果对修补程序分支执行非快进更新不是问题(如果要这样做,通常的警告适用),则只需重写修补程序分支以将其更改应用于开发分支的尖端:

git checkout hotfix
git rebase --onto develop experiment

这意味着:查找可从修补程序访问但不能从实验访问的所有提交(即修补程序分支独有的提交),并将它们移动到开发分支。换句话说,要移动的提交序列的基础定义为实验分支。--onto 参数指定提交序列的新基础,即第一次提交的新父提交被重定基址。

如果重写已发布分支的历史记录是不可接受的,只需根据 development 启动一个新分支并在那里复制您的提交。

git checkout -b hotfix2 develop
git cherry-pick experiment..hotfix

最新更新