在本地与远程新建仓库并关联后,初次push可能会遇到以下问题
- $ git push -u origin master
- To https://gitee.com/xxxx/xxx.git
- ! [rejected] master -> master (fetch first)
- error: failed to push some refs to 'https://gitee.com/xxxx/gittest.git'
- hint: Updates were rejected because the remote contains work that you do
- hint: not have locally. This is usually caused by another repository pushing
- hint: to the same ref. You may want to first integrate the remote changes
- hint: (e.g., 'git pull ...') before pushing again.
- hint: See the 'Note about fast-forwards' in 'git push --help' for details.
原因是因为远程仓库有一些文件而本地没有,通常是在远程建立仓库时有一些初始化文件比如Readme License 等,并且直接pull会提示warning: no common commits
,对于此类问题可以采用两种解决办法
1.git push -f 强制将本地文件推送至远程,这样会将远程仓库的已有的文件清掉
2. git pull origin master –allow-unrelated-histories 使用此命令告诉 git 允许不相关历史合并 这样就能把远程文件拉取回来。执行此命令后会有一个提示,要求说明为何要讲两个不相关的分支合并,输入信息后保存即可。
拉取完不同的文件之后再执行git push -u origin master
命令即可push成功。