git non fast forward rejected && [git]error: RPC failed; result=55, HTTP code = 0

Refer from http://blog.csdn.net/chain2012/article/details/7476493

git non fast forward rejected:

当要push代码到git时,出现提示:

error:failed to push some refs to ...

Dealing with “non-fast-forward” errors
From time to time you may encounter this error while pushing:

[plain] view plain copy print ?
  1. $ git push origin master  
  2. To ../remote/  
  3.  ! [rejected]        master -> master (non-fast forward)  
  4. error: failed to push some refs to '../remote/' 

git non fast forward rejected && [git]error: RPC failed; result=55, HTTP code = 0_第1张图片

问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方式:

1,强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容

git push -f

2,先把git的东西fetch到你本地然后merge后再push

$ git fetch

$ git merge

这2句命令等价于
[plain] view plain copy print ?
  1. $ git pull  

可是,这时候又出现了如下的问题:

git non fast forward rejected && [git]error: RPC failed; result=55, HTTP code = 0_第2张图片

上面出现的 [branch "master"]是需要明确(.git/config)如下的内容
[branch "master"]
    remote = origin

    merge = refs/heads/master

这等于告诉git2件事:

1,当你处于master branch, 默认的remote就是origin。

2,当你在master branch上使用git pull时,没有指定remote和branch,那么git就会采用默认的remote(也就是origin)来merge在master branch上所有的改变

如果不想或者不会编辑config文件的话,可以在bush上输入如下命令行:

[plain] view plain copy print ?
  1. $ git config branch.master.remote origin  
  2. $ git config branch.master.merge refs/heads/master  
之后再重新git pull下。最后git push你的代码。



Refer from http://blog.csdn.net/victoryckl/article/details/11098483

error: RPC failed; result=55, HTTP code = 005.00 KiB/s    fatal: The remote end hung up unexpectedly:

GIT_CURL_VERBOSE= 1 git push  或者 GIT_CURL_VERBOSE=1  git push origin dev0:dev0




你可能感兴趣的:(git non fast forward rejected && [git]error: RPC failed; result=55, HTTP code = 0)