当前位置:   article > 正文

执行git merge,合并两个分支的代码,其中某个分支的文件或代码被删除或被覆盖_gitlab上两个分支合并代码,出现一个分支代码消失

gitlab上两个分支合并代码,出现一个分支代码消失

项目情景:现有一套公司产品源码V1.0,我的工作任务是要在产品源码上进行二次开发

针对于git 项目,假设现有远程分支master(产品源码),将代码克隆下来,在此基础上进行开发,并将开发的代码推送到master分支(虽然我一早就知道最好不要在主分支开,但是由于这个项目就我一个人负责,于是我便将master分支占为己有,小朋友千万不要学我哦~~~)

项目进行到这个时候,技术经理突然通知我,产品源码V1.0已经升级到了V2.0,需要将我二次开发的代码跟新版本源码V2.0进行合并!!!!

于是我先将产品源码V2.0版本下载到本地,在master分支执行git checkout -b mergeV2.0,新建了个本地分支mergeV2.0,并将产品源码提交到mergeV2.0的分支上,然后再切换到master,执行git merge mergeV2.0

这个时候,我以为一次完美的合并即将诞生!!!    

然而.........

虽然V2.0版本的代码已经合并到master分支上,却把我在master分支上开发的代码全都delete掉了,于是我重复操作了几次,甚至动用了我在公司的势力(找其他前端同事寻求帮助),全都无济于事。

于是我尝试了在网上找的各种方法,全都不行。。。。

最后,在我默默的加了两天班之后,终于找到了问题的原因:

不能在含有二次开发代码的分支上新建分支!!!

不能在含有二次开发代码的分支上新建分支!!!

不能在含有二次开发代码的分支上新建分支!!!

解决办法:

新建dev分支,将产品源码V1.0提交到dev分支,然后在dev分支上创建mergeV2.0分支(因为之前创建过mergeV2.0分支,需先删除再创建),然后把二次开发代码 commit 到dev分支,切换到mergeV2.0分支,将产品源码V2.0 commit 到mergeV2.0分支上,再切换到dev分支,执行git merge mergeV2.0,如果有冲突执行“  :wq ”  即可,合并成功,问题就这样解决啦~

希望本文章会对你有所帮助哦~~~    笔芯

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/930926
推荐阅读
相关标签
  

闽ICP备14008679号