這個問題發生的背景一般是:
想把自己本地的某個項目關聯到遠程倉庫並推送上去,接着他會做如下操作:
本地項目—>遠程創建倉庫—>本地關聯遠程—>推送最新代碼
最后一個步驟發生問題:
那么問題是怎么導致發生的呢?
拿Android項目舉例,很多人在創建倉庫的時候,都會勾選這個操作
初識了一個README文件並配置添加了Android項目忽略文件。當點擊創建倉庫時,它會幫我們做一次初始提交。於是我們的倉庫就有了README.md和.gitignore文件,然后我們把本地項目關聯到這個倉庫,並把項目推送到倉庫時,回報文章開題的那個錯誤,這是因為,我們在關聯本地與遠程時,兩端都是有內容的,但是這兩份內容並沒有聯系,當我們推送到遠程或者從遠程拉取內容時,都會有沒有被跟蹤的內容,於是你看git報的詳細錯誤中總是會讓你先拉取再推送,但是拉取總是失敗。
想要避免這種問題,就要保持創建的倉庫是一個空倉庫,什么都沒有。
並且在創建倉庫時,其實Github是有提示的,相信很多人都沒有注意過紅框里面的小字。 Skip this step if you’re importing an existing repository. 如果要導入現有存儲庫,請跳過此步驟。 This will let you immediately clone the repository to your computer. 這將允許您立即將存儲庫克隆到您的計算機。
看到沒,其實Github都已經告訴過你了,只是你沒注意到。當把紅框里的鈎鈎去掉創建倉庫后,Github會給你一個提示。

再跟着給的提示在自己本地項目的跟目錄里敲就行了
之后再試試把項目推送上去
ok,完事兒了,沒想到讓你折騰一番的問題就這么簡單的解決了吧,看來真是細節不容忽視啊~
如果你沒有勾選,但是遠程倉庫里面有之前提交的文件,也可能會造成該錯誤。
如果你不想重新創建項目
出錯之后,運行git pull --rebase origin master,再git push(git push -u origin master)上去就可以。但是如果退出git,再次提交可能還會報錯,還得運行一下。
安利一個在idea中使用git提交的文章:
https://www.cnblogs.com/WangYunShuaiBaoLe/p/WY.html