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

 更新时间:2025年04月02日 09:16:56   作者:我就是我500  
这篇文章主要介绍了Git回退(Revert)操作后无法重新合并的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

问题背景

公司使用码云企业版作为代码托管平台,采用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即可!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 编写高质量代码的30条黄金守则(首选隐式类型转换)

    编写高质量代码的30条黄金守则(首选隐式类型转换)

    这篇文章主要介绍了编写高质量代码的30条黄金守则(首选隐式类型转换),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Git实现克隆历史的某个版本

    Git实现克隆历史的某个版本

    这篇文章主要介绍了Git实现克隆历史的某个版本,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 从Git历史中删除误提交文件并保留本地文件的解决方案

    从Git历史中删除误提交文件并保留本地文件的解决方案

    本文介绍了如何在Git项目中删除误提交的文件(如node_modules/.env等),包括用git rm --cached保留本地文件、更新.gitignore防止再次提交,以及用git filter-repo等工具彻底清除Git历史中的敏感文件,保障项目安全,需要的朋友可以参考下
    2025-10-10
  • 彻底卸载VSCode的方法步骤(附图文)

    彻底卸载VSCode的方法步骤(附图文)

    VSCode卸载后重新安装,会发现好像把之前的设置和配置也复原,这样就达不到重装的目的,问题就在于卸载时没有卸载干净,下面这篇文章主要给大家介绍了关于彻底卸载VSCode的方法步骤,需要的朋友可以参考下
    2023-04-04
  • git如何查看提交行数、删除行数

    git如何查看提交行数、删除行数

    这篇文章主要介绍了git如何查看提交行数、删除行数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-05-05
  • GitLab使用外部提供的Redis缓存数据库的方法详解

    GitLab使用外部提供的Redis缓存数据库的方法详解

    这篇文章主要介绍了GitLab: 如何使用外部提供的Redis缓存数据库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • git如何查看远程分支地址

    git如何查看远程分支地址

    了解如何使用Git命令查看远程分支地址与URL,包括使用`git remote`、`git remote -v`及`git remote show`命令获取远程仓库的详细信息与URL
    2026-06-06
  • Wireshark零基础使用超详细教程

    Wireshark零基础使用超详细教程

    Wireshark是应用最普遍的一款开源抓包软件,常用来检测收集成绩、攻打溯源、或许剖析底层通讯机制,本文给大家讲解Wireshark零基础使用超详细教程,感兴趣的朋友一起看看吧
    2023-08-08
  • vscode使用markdown无法预览网络图片的解决方法

    vscode使用markdown无法预览网络图片的解决方法

    本文主要介绍了vscode使用markdown无法预览网络图片的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • 网络编程之get与post的区别与联系

    网络编程之get与post的区别与联系

    这里来说说get与post的区别与联系,对这方面不懂的鹏哟可以参考下。
    2011-04-04

最新评论