今天网自己的GitHub更新自己写的demo,先后莫名其妙地跑出两个异常:
Push to origin/master was rejected:Push代码到origin/master分支被拒绝。
The current branch master has no upstream branch:没有在远程找到找到当前分支。
先来说说第一个异常:Push to origin/master was rejected
抛出这个异常的原因,网络上解释的最多的是:
因为本地仓库和远程仓库的代码不一样。简单来说就是代码冲突了,两个仓库的差别非常大,所以git拒绝合并两个不相干的东西。
我没法确定这个解释对不对。毕竟网上作者给出的解决方案是没问题的,但是跟我这边的情况不太一样。我这里是上一次提交代码后,今天又更改了部分代码,但是并没有新增或者删减文件。推送就发生上面的问题,我只能说操蛋的很。
那么现在直接上解决方案:
直接在AndroidStudio的Terminal里面运行命令:
git pull origin master --allow-unrelated-histories
问题解决。
再来说第二个异常:The current branch master has no upstream branch.
这个问题是在发生上面的问题被解决之后,执行“git push”命令的时候抛出的。
至于原因,网上各位大佬的解释是这样的:“问题的原因是没有将本地的分支与远程仓库的分支进行关联”,我只能说比较操蛋了,毕竟我已经向远程仓库提交过一次代码了,没有关联的话,肯定提交不成功的。
话不多说,直接上解决方案,就用AndroidStudio的Terminal提示的命令:
git push --set-upstream origin master
在AndroidStudio的Terminal里面直接运行上面的命令即可。