git解决本地分支合并test分支冲突的问题

一、博客背景

本篇博客仅作为工作记录使用,记录自己解决问题的过程,同样,本篇博客中介绍的方法不适合所有的人解决冲突。

二、分支介绍

master分支

test分支

dev-wuzhu分支(自己开发的分支)

dev-xiali分支(同事开发的分支)

分支使用前提:我现在所在的公司的发布流程是,先将自己的分支合并到test上,如果test分支发布且测试没问题后,合并到master分支发布生产环境,且不允许将test分支往自己的分支上合并,因为这样会存在将在test分支上,尚未测试通过的分支合并到本地分支时,在往master分支合并时,发布到生产环境

三、遇到问题

某天,同事和我同步修改了一个A.java文件,且同事先提交的代码,在我往test分支合并代码时出现了冲突。

四、解决方案

在自己的dev-wuzhu分支的基础上,在新建一个分支dev-wuzhu-2,然后再将test分支上的代码合并到dev-wuzhu-2的分支上,在本地解决冲突后,再将dev-wuzhu-2的分支合并到test分支上,这样test分支上就已经有了自己的功能代码,也有了同事的功能代码。然后再将dev-wzhu-2这个临时解决冲突的分支删除。最后发布生产环境时,将自己的dev-wuzhu的分支合并到master上去,也不会包含同事的分支代码

当然如果你们公司允许直接在测试分支上改代码的话,那么你可以在开发工具上,将测试分支拉取下来,然后将你的开发分支合并到测试分支,然后解决冲入并直接push到远程

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
当你想将某个分支的代码合并到测试分支(通常称为`test`或`dev`)时,你需要遵循以下步骤: 1. **切换到目标分支**: 首先,确保你已经在测试分支上工作,可以使用命令行中的 `git checkout test` 或者 `git switch test` 来切换。 2. **获取远程分支更新**: 如果有任何远程分支的更新,你需要拉取这些更改,输入 `git pull origin <branch_name>`,其中 `<branch_name>` 是你想合并分支名称。 3. **查看并选择合并策略**: 在Git中,你可以用 `git merge` 或 `git rebase` 进行合并,这取决于你的团队偏好和项目需求。`merge` 更保守,会创建一个新的提交合并历史,而 `rebase` 则会基于目标分支的新历史重新排列你的提交。 4. **合并代码**: 使用 `git merge branch_name` 命令执行合并操作,如果发现冲突Git会提示你解决冲突后保存文件。 5. **检查冲突和错误**: 打开合并冲突的文件,修复冲突,并确保所有修改都是正确的。 6. **添加、提交和推送**: 解决冲突后,添加修改 (`git add .` 或指定具体文件),然后用 `git commit -m "Merge branch <branch_name> into test"` 提交这次合并。最后推送到远程仓库:`git push origin test`. 7. **代码审查(可选)**: 如果你们团队有代码审查流程,现在可能需要请求他人审核你的合并。 8. **构建和测试**: 在推送后,确保构建系统和自动化测试通过,确认新代码没有引入新的问题
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值