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

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


当前回答

截至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中提供所有更改/应用程序代码。

其他回答

我使用的是2014年macOS 11.6.5 (Big Sur)版本的MacBook Pro

brew tap heroku/brew && brew install heroku

我得到一个错误和消息更新到最新的Xcode。最新的Xcode需要最新的macOS,而我无法升级到最新的macOS(我需要2015年的MacBook Pro或更新的版本)。对于一台2014年的MacBook Pro,我能够安装Xcode_13.2.1。Xip,并能够运行。现在我可以向Heroku推送最新消息了。

brew tap heroku/brew && brew install heroku

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

你可以同时推送到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中提供所有更改/应用程序代码。

我看到了之前的答案,但因为我面临着一个问题与评论应用程序(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状态检查你的分支名称)

我也有同样的问题。我已经安装了cli。

git remote

输出:

heroku
origin

git remote -v

输出:

heroku  https://git.heroku.com/YOUR-APP.git (fetch)
heroku  https://git.heroku.com/YOUR-APP.git (push)
origin  https://github.com/GitUserName/yourRepo.git (fetch)
origin  https://github.com/GitUserName/yourRepo.git (push)

如果您的分支名为main,请使用Git分支进行验证。例如,你会这样做:

git push heroku main

对我来说是

git push heroku master

现在推动您的本地更改

git push heroku master

输出:

To https://git.heroku.com/YOUR-APP.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://git.heroku.com/YOUR-APP.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

我不在乎它和遥控器有什么不同。我一直在本地开发,并没有意识到自动Git部署已经失败了。我关心的是局部的变化:

git push heroku master -f

现在部署的应用程序正按预期工作。