开发者社区> 问答> 正文

衍合(rebase)主分支到一个分支(不改变主分支)咨询?报错

先只有一个master主分支,在其基础上创建了一个refactor分支,并进行了几次提交,同时master也进行几次提交。现在想将最新的master内容rebase到refactor分支中,而master不变。根据官方文档说明


git rebase [主分支] [特性分支]

执行如下命令:

git rebase refactor master

(我认为此时master属于特性分支,refactor属于主分支)

结果大为意外,发现其和git rebase master refactor没有区别。即master变化了,衍合进了refactor分支的代码。与初衷不符。

似乎要想实现此功能的话,只能在最新master基础上再创建一个临时分支,如master-copy,再执行如下命令:git rebase refactor master-copy

然后删除master-copy分支即可。但删除时报错提示如下:

error: 分支 'master-copy' 没有完全合并。
如果您确认要删除它,执行 'git branch -D master-copy'。


不知何故?

难道想将最新的主分支(master)衍合到一个分支中同时又不改变主分支只能通过这种方式来实现吗?

有更方便的方法吗?





展开
收起
爱吃鱼的程序员 2020-06-14 17:16:27 551 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
    将最新的主分支(master)衍合到一个分支中同时又不改变主分支
    假如当前在test_branch上,想合并master上的更新,直接gitrebasemaster,就可以了。master不会改变。

    引用来自“YueZheng”的评论

    将最新的主分支(master)衍合到一个分支中同时又不改变主分支
    假如当前在test_branch上,想合并master上的更新,直接gitrebasemaster,就可以了。master不会改变。
    我刚开始使用git时,跟你理解的一样。也是在master分支上rebase另外的分支,可能git的设计真是有问题。:)
    2020-06-14 17:16:44
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载