zoukankan      html  css  js  c++  java
  • git push错误failed to push some refs to的解决方法

    ! [rejected] master -> master (non-fast-forward)

    error: failed to push some refs to 'git@github.com:yangchao0718/cocos2d.git
    hint: Updates were rejected because the tip of your current branch is behin
    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.

    问题说明

    本质原因:因为远程库与本地库不一致造成的,那么我们把远程库同步到本地库就可以了
    一般问题:发生在本地库提交到远程库的时候。
    一般原因:当我们在github版本库中发现一个问题后,你在github上对它进行了在线的修改;或者你直接在github上的某个库中添加readme文件或者其他什么文件,但是没有对本地库进行同步。这个时候当你再次有commit想要从本                        地库提交到远程的github库中时就会出现push失败的问题。
    我的问题:本地新建一个文件夹,打开git bash,输出git init初始化一个本地库,然后git pull了远程库,修改后提交。
    我的原因:远程库pull下来后,就是一个完整的库了,而我当初新建了个库,而且用这个本地库(与puul下来的不是一个),和远程库同步。
    我的解决方法:进入pull下来的库的文件夹,打开git bash,并push,就可以了。
     
    解决方案:这个问题是因为远程库与本地库不一致造成的,那么我们把远程库同步到本地库就可以了。
    使用指令:git pull --rebase origin master
    这条指令的意思是把远程库中的更新合并到本地库中,-rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。
    如图:

    下面我用图形象的解释下错误情况的发生和解决

    gitpush失败2
    git pull –rebase origin master意为先取消commit记录,并且把它们临时 保存为补丁(patch)(这些补丁放到”.git/rebase”目录中),之后同步远程库到本地,最后合并补丁到本地库之中。
    gitpush失败3
    接下来就可以把本地库push到远程库当中了。
    gitpush失败4

    大部分摘抄网络

    懒惰不会让你一下子跌到 但会在不知不觉中减少你的收获; 勤奋也不会让你一夜成功 但会在不知不觉中积累你的成果 越努力,越幸运。
  • 相关阅读:
    【JavaScript】实现队列Queue
    【Leetcode刷题篇】1.两数之和(JS)
    【48个原生JS网页小demo】1.信息切换
    【JavaScript】原生实现call bind apply
    【JavaScript】Interview(精简版)
    【JavaScript】4种常见的内存泄露
    【JavaScript】原型和原型链
    论自作音乐播放器涉及知识点总结
    Android横竖屏切换继续播放视频
    Android上传头像代码,相机,相册,裁剪
  • 原文地址:https://www.cnblogs.com/Rainingday/p/12364690.html
Copyright © 2011-2022 走看看