git报错:src refspec master does not match any

问题出现:git推送本地内容到远程仓库时,报错src refspec master does not match any

1.我的流程:

  • mkdir project_k 命令,新建本地仓库。
  • cd project_k命令,切换到本地仓库目录。
  • git init命令,初始化,使得本地仓库可以被git管理。
  • 自己手动在 project_k文件夹下添加一个非空的文件夹。
  • 打开 github.com新建自己的远程仓库,命名为:project_k
  • git remote add origin https://github.com/kangkaii/project_k.git 命令,将本地仓库与远程仓库关联。
  • 此时,直接使用 git push -u origin master命令,报错如上。

2.原因分析:

  • git push -u origin master前,一定缺少了某个过程。
    下图展示了git的工作区,暂存区,远程仓库。
  • 由于粗心,忘了使用git add 与 'git commit'命令,使文件只是存在于本地仓库而暂存区没有此文件。
  • 使用git add -A命令,将所有内容添加到仓库(没有任何输出提示);
  • 使用git commit -m"commit something",将文件提交到仓库(输出文件相关信息)。
  • 再次使用git push -u origin master,输出如下:
  • 来到github,刷新远程仓库,发现里面已经有了刚刚push的文件夹。

3.总结

出现此问题的原因在于缓存区没有内容,或者说push之前缺少了 add ,commit 导致没有内容可以push
做事情要按部就班的来,不能异想天开,按照自己的想法去乱搞。

本文参考:工作区和暂存区

原文地址:https://www.cnblogs.com/kangkaii/p/8425631.html