美文网首页
解决git merge对应版本时代码覆盖问题

解决git merge对应版本时代码覆盖问题

作者: 成神之路_be73 | 来源:发表于2021-08-19 18:44 被阅读0次
场景:
  1. 初始基于项目A的版本v1.0.0定制化开发了一个项目B; 变成了项目B的v1版本
    一段时间后,要求将项目A的v3.0.0 合并与定制化项目B的v1版本进行代码合并,升级系统
项目状况
  1. git master 主分支
    git develop 开发分支
行动
  1. 基于项目B 的develop 拓展出developV3 将项目A的v3.0.0 commit到developV3 进行push
    再返回develop分支上 输入 git merge developV3
    本来以为万事大吉 但是运行起来后发现develop上的内容已经完全被developV3 进行了覆盖,全部变成项目A的v3.0.0版本代码
解决方法
  1. 遇到问题,当然要询问度娘了,
    首先要保证当前分支只有 原来的 master 和develop分支
    因为我个人怕出错, 所以我基于develop又拓展出来一个分支dev
    dev 上 的代码变更为项目A的版本v1.0.0
    再基于dev拓展出devMerge 代码为 项目A的v3.0.0;
    这个时候,将dev上的代码升级为项目B的v1版本;
    然后在dev分支上 输入 git merge devMerge
    可以看到代码已经实现了合并, 但是会有冲突, 这个时候需要自己手动解决
    最后合并完冲突后, 可以切换到develop分支上,将本地代码手动替换成dev上已合并好的代码(关于这步操作,稍后会在第5块做解释),
    直接commit并push后,就会发现develop分支上,已经是合并后的代码了,大功告成
    多余的dev和devMerge就可以删掉了
回答上面的问题, 为什么要手动进行替换
  1. 实践出真理
    本来我是尝试将在develop分支上合并dev的, 但是发现有冲突,需要merge,相当于把我在dev分支上合并devMerge分支上的操作再做一遍, 我就觉得比较麻烦
    后来我就考虑重命名的问题, 将dev重命名为develop,develop换成developV1 ,(重命名的操作,可以看这里哦https://www.jianshu.com/p/d8b71d8a95f0
    但是又出现了问题,查看log, 只有项目A的v1.0.0和最新全部合并后的代码 , 没有项目B以前一期开发log记录,这样,如果想回退或者想打版本的话,就找不到原来的开发记录了
    所以想出来了手动替换,在原来的开发记录上,直接提交合并后的代码,方便溯源
参考文章
  1. https://blog.csdn.net/qq_38383650/article/details/116298151?utm_source=app&app_version=4.10.0

相关文章

  • 解决git merge对应版本时代码覆盖问题

    场景: 初始基于项目A的版本v1.0.0定制化开发了一个项目B; 变成了项目B的v1版本一段时间后,要求将项...

  • 常用Git指令

    Git 1、Git 管理代码,保证代码版本迭代连续性,即:向A分支merge或者push代码时,A分支代码必须是当...

  • git回滚

    git回滚 merge后有冲突,不想解决冲突,想取消merge git reset 回退到某个版本 回退到某个版本...

  • git操作合集

    1. Git强制更新并覆盖本地修改 git fetch --all 从远程拉取最新的代码 不merge git...

  • 命令行常用命令

    npm常用命令 git常用命令 git 常见问题解决 让远程仓库代码覆盖本地的代码 2、 让本地代码覆盖远程 3...

  • git 常见操作

    git 代码的本地修改: 删除远端分支: 本地分支要和远端对应起来... 删除本地分支 merge 代码:

  • git 错误 git error: You have not c

    简单,安全解决办法 $:git merge --abort $:git reset --merge $:git p...

  • Git语法管理

    一:基础语法 二:高级语法 使远程库强制覆盖本地代码(git pull时出现冲突 放弃本地修改) 本地版本强制覆盖...

  • git本地仓库的总结

    git是什么东西? git是一个命令 git解决了只有程序员会遇到的问题: 版本控制 git可以让代码有版本,可以...

  • git解决冲突

    git报错图片 解决方案一 (强制覆盖本地代码,你自己修改的代码即将被远程库的代码所覆盖) 解决方案一 把你修改的...

网友评论

      本文标题:解决git merge对应版本时代码覆盖问题

      本文链接:https://www.haomeiwen.com/subject/eiqjbltx.html