解决 error: failed to push some refs to 'https://github.com/
Resolve error: failed to push some refs to 'https://github.com/
报错:
! [rejected] main -> main (fetch first)error: failed to push some refs to 'https://github.com/XXX.git'
原因:远程库和本地库不一致。通常出现在初始化仓库有 readme 而本地没有等情况。
提示:git 的提示同上。
hint: Updates were rejected because the remote contains work that you dohint: not have locally. This is usually caused by another repository pushinghint: to the same ref. You may want to first integrate the remote changeshint: (e.g., 'git pull ...') before pushing again.hint: See the 'Note about fast-forwards' in 'git push --help' for details.
解决方法:
原理:
把远程库中的更新合并到本地库中,–-rebase 的作用是取消掉本地库中刚刚的 commit,并把他们接到更新后的版本库之中。然后再进行 push 即可。
git pull -–rebase origin master
操作,意为先取消 commit 记录,并且把它们临时保存为补丁(patch)(这些补丁在”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中。
注意:距离上次 push 提交至今,在本地库 commit 的记录均暂存为 patch。
版权声明: 本文为 InfoQ 作者【timerring】的原创文章。
原文链接:【http://xie.infoq.cn/article/556df2e658bd6d8f1079fef19】。未经作者许可,禁止转载。
评论