Git-Eclipse/IDEA解决代码冲突

首先要明确冲突是在什么场景下会发生,譬如最简单的:

你作为用户A在本地commit了一次名为'aaa'的记录,却还没push上远程仓库,以下是你的本地仓库指针指向,从上一次'test'指向当前的'aaa' :

但在远程仓库其他开发者已经在'test'之后完成了一次commit 'vvv',并push上了远程仓库,那么远程仓库的指针指向会是如下这样,但由于你上一步的commit仅仅是本地,所以现在远程仓库不能看到你本地的commit:

 因此每当你要准备将你本地的commit push到远程仓库时,你得先把当前远程仓库的代码往你本地拉一次(git fetch),为什么这里说的是fetch而不是pull,pull其实包含了fetch 和 merge两个动作,先fetch到远程仓库此刻最新的代码,merge采取fast-foward的策略,如果你本地的文件修改和fetch到的文件修改没有产生交集,则pull是一次完美的拉取要是产生交集那么文件就发生冲突了,需要手工merge才能完成,因此笔者这里推荐先fetch在merge。

先说Eclipse的流程

搜索栏搜索并打开Git repository,如上先fetch代码

  

fetch成功如下

右键点开local文件下的本地分支,点merge,选中弹窗中remote tracking的本地分支对应的远程分支,选中那么merge的动作会是从A到B

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值