使用git命令行解决冲突

文章转载自:https://blog.csdn.net/sureSand/article/details/78765727

 

使用git和提交的代码有所冲突,用IDE自带的git工具功能多了反而不知道怎么下手,总怕会出现事故,所以还是老老实实的使用git,简洁好操作,而且网上提供的错误支持也比较多,我决定以后也都使用命令行的方式来解决,把每个git命令的作用尽量摸透,连一个工具都不能完美使用,还如何去自己写代码和设计软件。 
首先我肯定是直接git pull拉取线上的代码,但是有冲突肯定会报错,然后我合并主分支git merge master 
合并之后我们使用git status -uno查看一下状态:

有三种状态,已经commited的,还有就是Unmerged path路径下的文件,就是我们需要手动合并的,没有冲突的会Auto-merging(自动合并) 
我们手动合并Unmerged path下的两个文件:

$ vim LocationController.JAVA
$ vim SysService.java

打开文件后会发现,代码中会被<<<<<<< 、=======、>>>>>>>包围,这是冲突标记:冲突标记<<<<<<< 与=======之间的内容是我的修改,=======与>>>>>>>之间的内容是别人的修改。 
修改完两个文件后分别将文件git add添加到暂存区

$ git add LocationController.java
$ git add SysService.java

然后统一git commit将修改合并的文件添加到工作区:

$ git commit -m "conflictJava"

再用git status -uno查看文件状态

发现Unmerged path文件已经没有了,我们直接git push提交到远程仓库:

$ git push origin master

 

posted @ 2018-05-16 09:43  fy_qxl  阅读(1755)  评论(0编辑  收藏  举报