1.问题描述:在将本地仓库内容推送至远程仓库Github时出现以下错误。
To github.com:LeowenHungry/Loewen-TestRepository.git ! [rejected] main -> main (non-fast-forward) error: failed to push some refs to 'github.com:LeowenHungry/Loewen-TestRepository.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.
原因分析:上面提示由于您本地库版本比远程库的版本老,导致不能将本地库文件推送到远程库,在git push之前需要先git pull,将您的本地库版本更新到和远程库一样的最新版本。
解决措施:
1.通过git pull 先将本地库更新到与远程库一致的版本,但要注意本地库后来做的修改可能被覆盖,最好使用git fetch(不会自动合并),查看更新情况再有选择合并,或者先将本地库修改过的文件备份,git pull后再重新修改;
再运行git push即可成功。
2.git提供了一种强制上传的方式:git push -f ,它会忽略版本不一致等问题,强制将本地库上传的远程库,但是一定要谨慎使用,因为-f会用本地库覆盖掉远程库,如果远程库上有重要更新,或者有其他同伴做的修改,也都会被覆盖,所以一定要在确定无严重后果的前提下使用此操作。
注:这里我使用方法1的时候又出现了新的问题,所以直接使用了方法2,大家要慎用,我是刚开始的测试,远程里面没有东西,所以用了。