git - Git:无法推送到远程主分支
问题描述
我已经在本地创建了我的项目并使用默认创建的分支“master”初始化了 .git。历史:
> git init
> git add --all
> git commit -m "initial set up"
> git remote add origin https://github.com/me/APP-REPO.git
> git remote -v
> git push origin main
error: src refspec main does not match any
error: failed to push some refs to
> git branch
* master
> git push -u origin main
error: src refspec main does not match any
但是,在 Github 上创建的 repo 具有默认分支“main”。怎么能直接推送到“main”?为什么我在本地看不到那个分支?
先感谢您!
解决方案
您的第一个错误发生在这里:
> git push origin main
error: src refspec main does not match any
error: failed to push some refs to
因为您尚未将分支名称修改master
为main
with git branch -M main
。
因此,运行git push -u origin master
会起作用,但它会创建一个master
在远程存储库中调用的分支名称。但是如果你想让你的主人默认,事情会变得有点烦人,所以git branch -M main
如果可能的话,你应该首先。
阅读评论部分,您似乎已将分支名称更改master
为main
并在运行时遇到了另一个错误git push -u origin main
。
在我看来,您已经使用 README 或其他一些内容初始化了一个远程存储库。因此,通常您可以git pull --rebase <your-remote-repo-url>
获取远程更改并将其重新定位到本地存储库。
完成所有这些之后,您应该能够git push -u origin main
。
但是如果你从头开始,你可以简单地在 GitHub 上开始一个新的 repo,而不需要任何初始文件,复制 url git branch -M main
、、、git remote add origin <remote-url>
和git push -u origin main
.
推荐阅读
- azure - 是否有内置方法可以将集合复制到同一区域中的“追随者”集合?
- javascript - 为什么 JavaScript 的 bind() 不能像我预期的那样在这里工作?
- linux - AWS EC2 上的粘性弹性 IP
- excel - Excel 的 SELECT 或 WORKSHEET 有问题。不知道为什么
- angular - 使用 eslint-plugin-angularjs-security-rules 的项目无法使用 Angular 6 中的 eslint 扫描文件以查找错误
- python - 为什么在 t1 完成之前等待不会阻止 t2 执行?
- node.js - 直播间如何“实时截图”
- javascript - 如何通过来自另一个对象数组的数据过滤对象数组?
- ios - Xcode请求我在函数中没有定义参数标签时使用?
- python - 在python中同一类的实例之间共享变量