git踩坑综合症

使用git真的是让我受尽了折磨,不写个集合都觉得对不起自己踩过的那些坑啊

  1. 错误一:failed to push some refs to git
    $ git push -u origin master

    To [email protected]:yangchao0718/cocos2d.git

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

    error: failed to push some refs to '[email protected]: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.

    出现错误的主要原因是github中的README.md文件不在本地代码目录中

    可以通过如下命令进行代码合并【注:pull=fetch+merge]

    git pull --rebase origin master

    执行上面代码后可以看到本地代码库中多了README.md文件

    此时再执行语句 git push -u origin master即可完成代码上传到github

2.错误二:You have not concluded your merge. (MERGE_HEAD exists)
Git本地有修改如何强制更新
本地有修改和提交,如何强制用远程的库更新更新。我尝试过用git pull -f,总是提示 You have not concluded your merge. (MERGE_HEAD exists)。
我需要放弃本地的修改,用远程的库的内容就可以,应该如何做?傻傻地办法就是用心的目录重新clone一个,正确的做法应该是:

git fetch --all
git reset --hard origin/master
git fetch 只是下载远程的库的内容,不做任何的合并git reset 把HEAD指向刚刚下载的最新的版本

相关推荐