GIT在使用中如何处理冲突问题

(更新于2016-06-16 感谢莱特钉 的指正,直接pull,是进行了Fetch和Merge而不是Fetch和Rebase。)

如果出现push的代码与合并的代码出现冲突的情况,应该进行rebase操作。

 

如果与当前版本冲突的版本尚未合并到主干,这个时候可以在网站进行自动rebase,这样的操作就是让你的版本排在冲突版本之前。

 

本地rebase的操作是使用master分支进行下拉,然后将当前冲突版本与master主干进行rebase

 

直接下拉的操作实际是自动rebase,下拉有两个操作,一个是Fetch,一个是merge,下拉后git将自动rebase当前冲突版本与冲突版本,很容易就使得两个版本的文件混淆,不建议这样直接下拉的操作。

 

正确的操作是使用master的时候选择Fast Forward only,这样避免下拉的版本与当前版本混淆

 

如果上述操作不能成功下拉,应该选择Fetch,事实上pull的操作包括Fetch和merge,所以直接Fetch的时候,主干的版本并不会马上与当前版本rebase,需要做的是在show log里面显示show whole project,这样在show log里面就可以看到所有的版本和主干,这个时候再用当前冲突版本与主干进行手动rebase,这样就避免了自动rebase出现的版本混淆。

 

在手动rebase的时候,如果出现了文件冲突,一般是对红色模块进行判断,或者主观选择整个冲突文件。另一种方法是在rebase的过程中不要关闭rebase界面,而是在eclipse中对冲突文件进行手动的修改,然后在rebase界面里选择我已经解决当前冲突文件,接着commit,就可以完成文件rebase。

 

一种解决自动rebase的操作是在show log里面选择当前混淆的版本,选择reset当前版本,在reset type里面选择Hard硬模式,这样可以直接返回下拉前版本。

转载于:https://my.oschina.net/luckid/blog/674764

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值