当从A同学的远程仓库下载的代码传到B同学的远程仓库时出错
出错原因:两个为不同的独立仓库
解决方法一:
git pull B同学远程仓库地址 分支名 --allow-unrelated-histories
此操作可以合并两个独立启动仓库的历史
然后就可以进行推送操作了
解决方法二:
git pull --rebase B同学远程仓库地址 分支名
此操作也可以合并两个独立启动仓库的历史
也能解决此问题
两种方法的不同
rebase
git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase
rebase:不生成新节点,是将两个分支融合成一个线性的提交。使用rebase的git演进路线(提交树)是一直向前的,这样在版本回退时也很容易
–rebase的作⽤是取消掉本地仓库中刚刚的commit
–allow-unrelated-histories
允许不相关历史提交,并强制合并
忽略版本不同造成的影响
解决方法三
git push -u --force B同学远程仓库地址 分支名
此方法为强制提交,虽然不报错,但是会覆盖原文件