执行git push -u origin master失败,git push -u origin main显示已更新
问题原因与操作说明
为什么会出现两种不同结果?
GitHub 现在新建仓库的默认分支名称是 main,而非早年的 master。你本地当前的工作分支是 main,所以:
- 执行
git push -u origin master时,Git 在本地找不到名为master的分支,因此抛出error: src refspec master does not match any的错误。 - 执行
git push -u origin main成功,是因为本地main分支和远程仓库的默认main分支对应,且当前本地内容和远程已经同步,所以提示Everything up-to-date,同时完成了本地分支与远程分支的绑定。
后续操作建议
- 确认本地分支:执行命令
git branch,输出里带*的就是当前所在分支,应该显示为main。 - 之后推送代码直接用
git push即可,之前的-u参数已经把本地main和远程main绑定,Git 会自动识别推送目标。 - 除非有特殊需求,没必要强行使用
master分支,目前主流代码托管平台(GitHub、GitLab 等)都已改用main作为默认分支名。
内容的提问来源于stack exchange,提问作者max
相关产品推荐
相关产品推荐

