git pull 分支报错 fatal: Need to specify how to reconcile divergent branches...
分析:这是由于你拉取pull分支前,进行过merge合并更新分支操作,而其他人在你之前已经push过一个版本,导致版本不一致
第一种解决方法:比较简单
执行git config pull.rebase false
默认将pull下来的代码与现有改动的代码进行合并
但是可能会造成代码冲突,需要处理下这个问题,代码冲突如果2个人都改了同一个文件,需要联系之前push的同学,看看这块代码怎么保存
第二种解决方法:回退到合并之前的代码,在进行pull拉取最新代码
git pull 语法记录:
git pull <远程主机名> <远程分支名>:<本地分支名>
例如执行下面语句:
git pull origin master:brantest
将远程主机origin的master分支拉取过来,与本地的brantest分支合并。
后面的冒号可以省略:
git pull origin master //这种方式在之前公司里,新手特别喜欢使用
表示将远程origin主机的master分支拉取过来和本地的当前分支进行合并。
上面的pull操作用fetch表示为:
git fetch origin master:brantest
git merge brantest
相比起来git fetch更安全一些,因为在merge前,我们可以查看更新情况,然后再决定是否合并。
