- git merge 合并冲突
- git rebase 合并冲突
1、本地的两个分支合并冲突
当git merge develop
提交代码时,提示Automatic merge failed 等信息时。说明自动合并失败,需要手动合并,解决冲突
# 1. 从远端同步develop分支代码
$ git pull origin develop
# 2. 切换当前分支到develop
$ git checkout develop
# 3. 合并develop_local到develop
$ git merge develop_local
######## 此时分支变为develop | merging
# 4. 接下来git diff一下此文件看看自动合并的情况,并作出相应修改。
$ git diff
# 5. 手动修改冲突代码后,重新提交
$ git add xxx.java
$ git commit -m '解决冲突'
######## 此时分支变回develop,说明合并成功
# 6. 提交代码
git push origin develop
2、git rebase合并冲突
$ git pull origin develop # 发生冲突
$ git pull --rebase # #衍合服务器最新代码
# 如果有冲突,分支会由(develop) 变成(develop|REBASE 1/1)
$ git status # 查看有哪些冲突的文件
$ vi 冲突文件 #打开文件后搜索<<<<<<<与>>>>>>>之间的内容,就是冲突的地方,修改冲突行,保存退出。
$ git add 冲突文件 # 添加修改后的文件到缓存区
$ git rebase --continue # 继续rebase
$ git log #如果rebase成功,表示冲突已解决,此时可以查看log
$ git commit --amend #修改最后一次提交,包括文件与注释
$ git push origin develop #重新push提交
评论前必须登录!
注册