我只是想连接到我的GitHub账户。当我这样做的时候,我得到这个错误消息作为一个小红色弹出在页面的右上角:

无法检索项目,内部服务器错误。


当前回答

恩里克·阿隆的答案是为当地的机器工作。

对于远程SSH服务器,将会出现IP不匹配错误。

解决方法:

登录Heroku网站 转到帐户设置 在面板中显示API键 在服务器的命令行中输入heroku login -i 输入电子邮件,使用API密钥作为密码,然后就可以执行Git远程推送的其余步骤了

其他回答

这只是一个暂时的事情,关于这个问题的更多细节在这里。

你可以同时推送到GitHub和Heroku,以获得临时解决方案:

git push -u origin <branch>
git push heroku <branch>

截至2022年5月25日19:52 UTC, GitHub集成已重新启用:

我们很高兴地报告,GitHub集成已重新启用!您现在可以重新连接GitHub,并使用新生成的令牌恢复您的Heroku管道功能,包括审查应用程序。 您可以立即连接到GitHub,也可以等待本文中描述的增强集成。现在要重新建立您的GitHub连接,请遵循这些说明。

以下是这篇博文中提到的“增强集成”:

为了改善集成的安全模型,我们正在探索与GitHub合作的其他增强功能,其中包括转移到GitHub Apps以获得更细粒度的权限,并启用RFC8705以更好地保护OAuth令牌。由于这些增强功能需要Heroku和GitHub进行更改,我们将随着参与的发展发布更多信息。

没有提到增强集成的可用性的时间表。


在2022年4月15日至5月25日期间,Heroku的GitHub集成功能被禁用,同时Heroku调查了一个安全漏洞。在此期间,仍然可以通过其他方式进行部署,最显著的是通过git push。

为了减轻潜在受损的OAuth令牌的影响,我们将在接下来的几个小时内撤销Heroku GitHub集成的所有现有令牌。我们还禁止创建新的OAuth令牌,直到另行通知。您的GitHub存储库将不会受到此操作的任何影响。

Which Heroku features have become non-operative due to the removal of the Heroku-GitHub integration? Enabling review apps Creating (automatic and manual) review apps Deploying (automatic and manual) review apps Deploying an app from GitHub (either manual or automatic) Heroku CI cannot create new runs (automatically or manually) or see GitHub branch list Heroku Button: unable to create button apps from private repositories ChatOps: unable to deploy or get deploy notifications Any app with a GitHub integration may be affected by this issue. To address specific integration issues, please open a case with Heroku Support

从GitHub部署迁移到Git部署

在2022-04-21 23:53 UTC, Heroku提供了从基于github的部署迁移到基于git的部署的扩展说明:

虽然我们的客户仍然无法通过Heroku仪表板重新连接到GitHub,但我们希望分享之前提供的代码部署方法的补充。有关如何将部署方法从GitHub更改为Heroku Git的说明,请参阅以下帮助文章:如何将部署方法从GitHub切换到Heroku Git,并在GitHub repo中提供所有更改/应用程序代码。

关于这个问题有一个更新。你现在可以像更新中提到的那样启用GitHub集成。

如果它不起作用,你可以尝试删除应用程序到GitHub的连接(断开连接),然后重新添加连接。再次添加连接也可以在隐身模式下完成,因为有时会出现与cookie相关的问题(此处提到)。

我看到了之前的答案,但因为我面临着一个问题与评论应用程序(PR应用程序),大多数情况下,你将与不同的分支工作在这种情况下,所以这里有一个解决方案,推动你的东西,而不是(主/主)分支到Heroku。

首先,确保正确设置了远程源

heroku git:remote -a your_awesome_app

你也可以通过git remote -v来确认,你会看到你的原点指向你的Heroku应用程序。

git remote -v

heroku    https://git.heroku.com/your_awesome_app.git (fetch)

这里原名赫鲁。

如果您想从主分支部署更改

git push heroku main

如果你想从特性分支(而不是* main分支)推送你的更改

然后使用下面的命令将你的特征分支推到Heroku

git push heroku feature:main

Heroku -是你的原始名称(用git remote -v确认你的原始名称 Feature -是你当前的分支,而不是主/主分支(用git branch或git状态检查你的分支名称)

我也遇到了同样的情况,正如其他人所说,这是由于Heroku的安全问题。同时,您可以使用Heroku CLI部署您的代码。

所以,在Heroku web仪表板上,选择Heroku Git:

然后用Heroku登录设置Heroku CLI。

最后,如果你的存储库已经存在于GitHub上,你需要通过运行以下命令添加一个新的远程:

heroku git:remote -a your_app_name
git push heroku master

您可以在官方文档中找到关于此解决方案的更多信息。