一般在团队合作开发一个项目的过程中,经常出现两个人同时修改一个文件然后都向主master提交commit,这样就会产生冲突(conflict),那么这种情况如何解决?
1 新建分支
如果项目的主分支是master,自己从主分支fork下来的就是属于自己的master分支,该分支是默认被主分支的master同步的。首先要在自己的远程仓库中新建一个分支(我们这里取名为work),以后自己通过git提交修改时都提交到work而不是master
这样就能看到work分支也有我们的整个项目了
2 在IDEA中修改设置
以后我们每次提交不应该提交到自己的master分支中,而应该提交到自己的work分支中。所以需要在IDEA中进行git相关设置的修改。首先从远程pull一下
在IDEA右下角点开Git分支目录,选择remote—-work—–checkout as new local branch
然后就可以看到我们的git默认提交的分支已经改成了刚才创建的work。
3 提交代码并修复冲突
在项目中随意位置新建一个html,敲一些字母(我们这里只是测试用),然后通过git commit and push到我们刚才新建的work分支。
然后通过VCS,选择Rebase,和第二步中一样
再点击右下角的git,选择master分支并且merge
这里就会提示我们有冲突。双击冲突并且选择自己到底采纳哪个代码
当解决完冲突之后,重新commit并且从自己的work分支pull and request到项目的主master分支即可。
切换到master分支选择要合并的dev分支
2、处理冲突代码
3、合并代码后提交