赞
踩
如何解决在使用git pull 拉取线上代码时发生的冲突
方法一(网上借取):
关于使用命令解决git pull拉取代码时发生的冲突解决办法
1、首先直接git pull拉取线上的代码,出现冲突并报错
2、合并主分支 git merge master
3、查看状态:使用命令git status -uno 查看当前状态
目前有三种状态,包括已经commited的,还有就是Unmerged path路径下的文件,就是我们需要手动合并的,没有冲突回Auto-merging(自动合并)。
我们需要手动合并下面两个文件:
手动打开文件后会发现,代码会被<<<<<<<<<、========、>>>>>>>>>等包围,这是冲突标记。
关于冲突标记:<<<<<<和======之间的内容是本地自己修改的,========与>>>>>>>>>之间的内容是别人修改的。
4、在修改完两个文件后,可以分别将文件git add到暂存区
如: 使用命令:git add LocationController.java
git add SysService.java
然后统一git commit将修改合并的文件添加到工作区:
5、git commit -m "conflictJava"
6、再用 git status -uno查看文件状态
发现冲突已经解决,接下来将文件提交到远程仓库。
7、使用命令:
git push origin master
方法二:使用可视化工具,如:Tortoisegit
1、如果事先知道别人和自己同时更改了某一个具体文件,则将本地文件重命名,
2、git pull下来线上的代码。然后再此基础上修改后再将文件push上取即可。
如果不知道别人和自己同时修改了同一个文件,就拉取了线上代码。
则先使用命令:可以先放弃本地修改后更新:
1、git reset --hard
2、git pull
Please enter a commit message to explain why this merge is necessary.
请输入提交消息来解释为什么这种合并是必要的
it 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话就需要:
1.按键盘字母 i 进入insert模式
2.修改最上面那行黄色合并信息,可以不修改
3.按键盘左上角"Esc"
4.输入":wq",注意是冒号+wq,按回车键即可(输入冒号加wq ":wq", 按回车键,意思就是就是忽略这个提示)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。