git常见问题之git push -u origin master时failed to push some refs to

在使用git 对源代码进行push到gitHub时可能会出错,信息如下

 

Administrator@PC-20151117FT04 MINGW64 /e/AsWorkspace/AndroidStudy (master|MERGING)
$ git push -u origin master
To github.com:nonfuxinyang/android-study.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to '[email protected]:nonfuxinyang/android-study.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.


此时很多人会尝试下面的命令把当前分支代码上传到master分支上。
$ git push -u origin master
但依然没能解决问题
出现错误的主要原因是github中的README.md文件不在本地代码目录中
可以通过如下命令进行代码合并【注:pull=fetch+merge]
$ git pull --rebase origin master
执行上面代码后可以看到本地代码库中多了README.md文件

 

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

 

注:我们在使用git pull命令的时候,可以使用--rebase参数,即git pull --rebase,这里表示把你的本地当前分支里的每个提交(commit)取消掉,并且把它们临时 保存为补丁(patch)(这些补丁放到".git/rebase"目录中),然后把本地当前分支更新 为最新的"origin"分支,最后把保存的这些补丁应用到本地当前分支上。

 

 

你可能感兴趣的:(其他)