当前位置: 代码网 > it编程>编程语言>其他编程 > Git回退(Revert)操作后无法重新合并的问题及解决

Git回退(Revert)操作后无法重新合并的问题及解决

2025年04月02日 其他编程 我要评论
问题背景公司使用码云企业版作为代码托管平台,采用master/dev分支分类进行代码管理,matser分支为保护分支,只能审核后在网页端提交合并(请求评审)。此时dev代码合并到master后发现有问

问题背景

公司使用码云企业版作为代码托管平台,采用master/dev分支分类进行代码管理,matser分支为保护分支,只能审核后在网页端提交合并(请求评审)。

此时dev代码合并到master后发现有问题需要回退上次一合并,此时只能在请求评审处点击回退按钮,回退后master并没有改动,而是新产生了一个revert_xxxx的新分支。

现有问题

新产生的revert_xxxxx分支是什么分支,和以前的master/dev有什么关系?

回退后重新合并时发现并无改动,如何才能重新合并?

问题解答

新产生的分支(revert_xxxxx)为master分支回退后的新分支,其中包括revert操作,因为master为保护分支,所以此时master分支上并无改动。也就是说:回退操作不会直接在master上执行!

此时想将dev重新合并到master,发现无法合并,因为git的revert并不是真正的回退操作,而是将上次的合并内容删除掉(反向提交),也就是说相当于上次合并的内容依然存在,revert操作只是将上次合并内容进行删除重新提交(反向提交)。

问题解决

直接将新分支(revert_xxxxx)合并到master,master就存在回退记录了,然后直接将revert_xxxxx分支删除即可。

现在有dev/master双分支,master上已回退但是无法重新合并,此时需要将master合并到dev,让dev上也有这个退回记录,然后将dev再次退回(将revert记录revert,相当于重新提交),此时git就会在反向提交的记录上反向提交,这次就会把revert删除的内容重新提交回来,此时会生成新的操作记录,再次合并master即可。

总结

码云revert后并不会产生改动,而是产生新分支,合并即可。

revert操作相当于反向提交改动,所以即使revert后master分支代码也比dev要新,所以无法提交,此时将master合并dev,dev分支revert上次revert即可!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com