完整错误图(网上找到的) 总共有三种方法
错误:Merge branch 'master'
写代码的时候,肯定经常git pull(拉取) 或者 git push(上传)代码
这次的错误是 亲测有效 的
开始用git log 查看提交(下面这张图就是)
你会发现也就是我仓库里的最新的代码 为9cd3e7c这个commit。
但是我本地git log显示 9d1255a5这个commit在我本地是最新的。
原因是本地分支比仓库里的分支超前了,导致每次拉取的时候都需要去输入合并信息,解决冲突
如果有上面的情况,补充一个建议,可以先去编辑器看看有没有冲突的代码,如果没有把报错的页面关闭,执行
git status git commit -am"做的事情" git pull
依次执行,如果git pull
没冲突,没问题了,可以直接git push
了
方法1(推荐)
使用git pull --rebase命令,如果没有冲突,则会直接合并,如果存在冲突,手动解决冲突即可,不会再产生那条多余的信息。如果你不想每次都rebase,可以在git bash里执行,能使用这个简单解决更好
git pull --rebase
方法2
当这个问题不存在,依旧重新拉取这个代码
git pull --on-edit origin master
方法3
知道以上的信息,就可以
使用 git log 先查看信息
git log
然后使用 git reset 下代码,选择自己的或者仓库的(如果不知道git reset的作用 下面会跟你介绍)
git reset --hard 9cd3e7c
最后重新使用拉取下代码
git pull origin master
接下来介绍, git reset
的作用
拿这个图给你们看应该很容易懂吧,后面总共跟了 三个值分别是
git reset --soft
git reset --hard
git reset (--mixed)
作用都在图里显示着