赞
踩
最近在做项目时,本地comit完代码后,从远程库拉取代码后,发现出现很多冲突,有点慌不知如何快速解决,一个个改效率太低,小乌龟这个之前看过一点点,但没有在实际项目中用过,这次用小乌龟快速解决了这个问题.
小乌龟下载地址
场景:
在公司做项目时,多个同事可能会同时修改了同一文件的同一行的代码,其中一个已提交了代码,但你又在本地修改了,拉取代码时势必会造成冲突,如果少量冲突,手动改一下还好,但是出现大量冲突,势必要借助一些工具,提高工作效率.
案例:
首先,我直接在远程代码仓库直接添加测试代码,模拟同事已commit了代码.
然后在本地,同一文件的同一位置,添加代码,这时提交代码,拉取代码后,会发现:
打开当前项目所在位置:
鼠标右击---->TortoiseGit -->Reslove
双击冲突文件:打开解决冲突的窗口
左边文件为:远程仓库的文件,右边为本地文件(也就是你当前修改的文件)
下边的文件是你合并操作后的文件,所以你要对比左右文件的差异:
比较常见的情况是:
1.你对已有的代码进行了改动,也会造成冲突(应该以你修改的为准)
2.别的同事推送的代码.和你添加的代码的位置冲突了(都要保留)
下面就解决冲突:
在合并处,鼠标右击:
1.Use text block from left:使用远程库的代码
2.Use text block from right:使用本地的代码
3.Use text block from right before left:
远程库和本地文件的代码都保留,且本地库的代码放在上面,远程库的代码放在下面
Use text block from left before right:
远程库和本地文件的代码都保留,且本地库的代码放在下面,远程库的代码放在上面
合并后的代码:
最后,点击Mark as resolved 和Save按钮即可(如果冲突比较多,就点击Next difference一个个排查解决冲突即可)
还有虽然解决了,冲突,但是git命令行还是处于master/merging状态,这又该如何解决?
几个命令就解决了
最后,再将合并后的代码push到远程仓库:
还是习惯性先拉取一下代码
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。