Git开发中,由于项目开发人员不只一个,所以在代码开发中,多个开发人员可能会对同一文件同一地方的代码进行修改,这样在先后提交到master上时,就会产生冲突,以下是演示冲突产生和解决冲突的示例:
1.在IDEA新建一个README.md文件进行演示 内容为: test conflict 111。 commit and push到master上
2.在GIT HUB上直接修改此文件内容 test conflict 222。(这是模拟其他开发人员先提交代码到master上)
3.在IDEA中修改内容为 test conflict 333, 此时pull代码会产生冲突提示
至此,冲突已经出现。下面讲述解决内容冲突:
1.首先将本地代码进行stash 即保存到git栈中,命名为333 conflict (git - repository - stash changes) 此后所有的修改已经不存在了,恢复到上一次的内容 test conflict 111
2.pull master代码 内容变为 test conflict 222
3.将本地修改取出 (git - repository - unstash changes)选中之前创建的"333 conflict" 恢复
4.此时会提示有冲突 点击解决冲突 中间的result为解决结果 可以直接选择左或右或修改结果
5.冲突修改完成,commit and push
来源:https://blog.csdn.net/mr_yyy/article/details/66476523
或者先commit到本地,然后再pull,就会弹出merge窗口,参考 https://blog.csdn.net/liangyihuai/article/details/52277689