refspec matches more than one
在提交代码的时候我错误的将branch和tag命名成了相同名称,导致提交的时候报错.
问题示例
git branch test1.1
git checkout test1.1
git tag test1.1
git push
报错: refspec *** matches more than one
解决方案
- 推送分支和tag的时候进行路径指定, 不然在branch 和 tag 中,git不知道用户到底想要推送哪个
git push origin refs/heads/test1.1:refs/tags test1.1
- 非要branch 和 tag名称一样的话,每次推送都要使用完整的路径名称
git push origin refs/heads/test1.1
- 已经推送到远程仓库中的,可以删除分支重新创建
git push origin -d heads/test1.1
test1.1 是我自己命名的,解决问题时请自行修改分支名
参考
- https://blog.csdn.net/qq_32452623/article/details/76649109
- https://stackoverflow.com/questions/70584317/git-push-error-dst-refspec-refs-heads-main-matches-more-than-one
- https://www.atlassian.com/git/tutorials/learn-git-with-bitbucket-cloud
- Git小抄