问题来了:
每当我这样做时
$ 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'
这是什么意思以及我应该如何解决它?
如果您已经建立了远程跟踪分支(即
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 书籍中的章节。希望有帮助!
如果您想使用显式 URL 从存储库中提取分支“master”,则调用的命令是:
git pull https://github.com/username/reponame.github.io.git master
因为“origin”只是所谓的“命名远程”的名称,它是存储库的配置别名,允许您在每次访问该存储库时不必键入该存储库的 URL。
对
git pull
的规范调用是:
git pull [<repo> [<refspec> ...]]
[...]
中的部分是可选的 - 请参阅手册页。
转到.git文件夹,会有一个名为config的文件 编辑该文件,删除带有错误分支的 fetch = + 行,保存并正常拉/取