git pull origin master 返回致命错误:无效的引用规范

问题描述 投票:0回答:3

问题来了:

每当我这样做时

$ git pull 'https://github.com/username/reponame.github.io.git'

后面跟着网址,我没有遇到任何问题,但是当我遇到问题时

git pull origin master 'https://github.com/username/reponame.github.io.git'

后跟它返回的 url

fatal: Invalid refspec 'https://github.com/username/reponame.github.io.git'

这是什么意思以及我应该如何解决它?

macos git github terminal refspec
3个回答
16
投票

如果您已经建立了远程跟踪分支(即

git clone
自动执行此操作)并且想要使用
git pull
来获取并合并远程存储库中当前分支的最新提交,我相信执行以下就足够了:

git pull

要通过包含 refspec 来达到相同的效果(不必要的冗长):

// Pulls the remote 'master' branch down to the local 'master' branch
git pull origin master:refs/remotes/origin/master

您收到该错误是因为 URL 的提供不是 refspec 的格式。

有关 refspec 如何工作及其语法的更多详细信息,请参阅精彩的 Pro Git 书籍中的章节。希望有帮助!


3
投票

如果您想使用显式 URL 从存储库中提取分支“master”,则调用的命令是:

git pull https://github.com/username/reponame.github.io.git master

因为“origin”只是所谓的“命名远程”的名称,它是存储库的配置别名,允许您在每次访问该存储库时不必键入该存储库的 URL。

git pull
的规范调用是:

git pull [<repo> [<refspec> ...]]

[...]
中的部分是可选的 - 请参阅手册页


0
投票

转到.git文件夹,会有一个名为config的文件 编辑该文件,删除带有错误分支的 fetch = + 行,保存并正常拉/取

© www.soinside.com 2019 - 2024. All rights reserved.