Composer 无法获取 github
Posted
技术标签:
【中文标题】Composer 无法获取 github【英文标题】:Composer could not fetch github 【发布时间】:2016-05-31 12:38:53 【问题描述】:今天,我尝试通过运行 composer create-project laravel/laravel=5.1.* myproject --prefer-dist
来安装 Laravel,但出现此错误:
Could not fetch https://api.github.com/repos/laravel/laravel/zipball/716e65268ae123e5bd73e505acf9695c678aff88, please create a GitHub OAuth token to go over the API rate limit
Head to https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+MyPC+2016-02-19+0343 to retrieve a token. It will be stored in "C:/Users/MyPC/AppData/Roaming/Composer/auth.json" for future use by Composer.
为什么我无法从 GitHub 获取?这是我使用多年后第一次遇到这种情况。 GitHub 是否有任何政策变化?
【问题讨论】:
作曲家创建项目 laravel/laravel 5.1 myproject --prefer-dist help.github.com/articles/git-automation-with-oauth-tokens "请创建一个 GitHub OAuth 令牌以超过 API 速率限制" 【参考方案1】:Niels 接受的答案是正确的。要在 composer 中使用生成的令牌,请使用以下命令:
composer config -g github-oauth.github.com YOUR_TOKEN
【讨论】:
只需从此链接创建新令牌:github.com/settings/tokens 然后使用上述命令设置令牌。完成。【参考方案2】:遗憾的是,该政策在 Github 上已经活跃了很长时间。它记录在here 中,您可以在core
部分的https://api.github.com/rate_limit 中查看您的当前状态。
另见https://developer.github.com/v3/#rate-limiting:
对于未经身份验证的请求,速率限制允许您每小时最多发出 60 个请求。未经身份验证的请求与您的 IP 地址相关联,而不是与发出请求的用户相关联。
Composer 无法避免这种情况,因此它会抛出详细错误:
创建一个 GitHub OAuth 令牌以超过 API 速率限制
您可以在https://github.com/settings/tokens 执行此操作,并且每次安装只需执行一次,因为 Composer 会记住后续请求的令牌。
【讨论】:
read:packages 范围是否足够或是否有其他应授权的授权?【参考方案3】:2022 年 Composer 2.x 更新
我尝试了此处列出的其他解决方案,但它们对我不起作用。检查composer update
的详细输出,我发现您可以使用git
设置github.accesstoken
配置选项,Composer 将使用它。
-
创建GitHub Personal Access Token 并将令牌复制到剪贴板
运行
git config --global github.accesstoken <token>
,用上面的令牌替换<token>
。
如果您想专门为当前项目设置令牌,您可以删除--global
选项。
【讨论】:
啊,这对我有用,应该是 Composer v2 的公认答案 :) 谢谢 - 你知道令牌需要什么最低权限吗?以上是关于Composer 无法获取 github的主要内容,如果未能解决你的问题,请参考以下文章
尝试从 toran 获取所需的私有库时的 Composer 警告
Composer 无法在 Windows 上运行,出现 [Composer\Exception\NoSslException] 错误