0


git 冲突了怎么办

原因:本地修改的文件和目标远程库对同一个文件都有修改。这时无论是统一分支的pull,push,还是不同分支的merge时都会产生冲突。

解决办法:

方法一(放弃本地,使用远程):

git pull 出现冲突后丢弃本地冲突文件修改,采用远程文件覆盖本地文件git checkout [文件路径]例:git checkout test/src/main/resources/spring-shiro.xml

方法二(暂存到暂存区,更新后,从暂存区取出合并解决冲突):

git pull 出现冲突后可以暂存本地修改git stash ,然后git pull 更新代码,git stash list 可查看暂存记录列表,释放本地暂存 git stash apply stash@{0} ,出现冲突文件,找到并解决,然后可以提交git add . 加入索引库,然后本地提交git commit -m '注释' 最后git push到远程。

方法三(更新发现冲突,提交本地,再更新,找到冲突地方解决后,再次提交推送远程):

1、git pull更新代码,发现error: Your local changes to the following files would be overwritten by merge:pom.xmlPlease commit your changes or stash them before you merge.这说明你的pom.xml与远程有冲突,你需要先提交本地的修改然后更新。

2、git add pom.xml

git commit -m '冲突解决'

提交本地的pom.xml文件,不进行推送远程

3、git pull

更新代码Auto-merging pom.xmlCONFLICT (content): Merge conflict in pom.xmlAutomatic merge failed; fix conflicts and then commit the result.更新后你的本地分支上会出现 (develop|MERGING)类似这种标志。

4、找到你本地的test.txt文件,并打开你会在文件中发现<<<<<<< HEAD ,======= ,>>>>>>> ae24sgwmfp2m2ojr2jaagwhhfawe2类似这样的标记。

<<<<<<< HEAD和=======中间的是你自己的代码, ======= 和>>>>>>>中间的是其他人修改的代码自己确定保留那一部分代码,最后删除<<<<<<< HEAD ,======= ,>>>>>>>这种标志。

5、git add test.txt && git commit -m '冲突解决结束' 再次将本地的test.txt文件提交。

6、git push将解决冲突后的文件推送到远程。

标签: git github

本文转载自: https://blog.csdn.net/fengdakailai/article/details/124632740
版权归原作者 fengdakailai 所有, 如有侵权,请联系我们删除。

“git 冲突了怎么办”的评论:

还没有评论