我在GitHub上有一个现有的Rails应用程序,并部署在Heroku上。我正在尝试建立一个新的开发机器,并从我的GitHub存储库中克隆了这个项目。然而,我对如何将此文件夹链接到Heroku感到困惑。最初,我使用heroku创建命令,但显然我这次不想这样做,因为它将创建另一个heroku实例。


当前回答

Heroku基于Heroku git remote链接您的项目(以及一些其他选项,请参阅下面的更新)。要将Heroku远程设备添加为当前存储库中的远程设备,请使用以下命令:

git remote add heroku git@heroku.com:project.git

其中project是Heroku项目的名称(与project.Heroku.com子域相同)。完成后,您可以使用heroku xxxx命令(假设您安装了heroku Toolbelt),并可以像往常一样通过git push heroku master推送到heroku。作为快捷方式,如果使用命令行工具,可以键入:

heroku git:remote -a project

这里,project是您的Heroku项目的名称(谢谢,Panic上校)。您可以通过传递-r remote_name来任意命名Git remote。

[更新]

正如Ben在评论中提到的,远程器不需要命名为heroku,gem命令就可以工作。我检查了源代码,它的工作原理如下:

如果您通过--app选项(例如heroku info--app myapp)指定应用程序名称,它将使用该应用程序。如果您通过--remote选项(例如heroku info--remote production)指定Git远程名称,它将使用与该Git远程关联的应用程序。如果您没有指定任何选项,并且在Git配置文件中设置了heroku.remote,则它将使用与该远程关联的应用程序(例如,要将默认远程设置为“production”,请在存储库中使用Git-configheroku.Remoteproduction,heroku将运行Git-config heroku.remote以读取此设置的值)如果不指定任何选项,gem将在.git/config文件中找不到任何配置,并且gem仅在git remotes中找到一个URL中包含“heroku.com”的远程设备,它将使用该远程设备。如果这些都不起作用,则会引发一个错误,指示您将--app传递给命令。

其他回答

Heroku基于Heroku git remote链接您的项目(以及一些其他选项,请参阅下面的更新)。要将Heroku远程设备添加为当前存储库中的远程设备,请使用以下命令:

git remote add heroku git@heroku.com:project.git

其中project是Heroku项目的名称(与project.Heroku.com子域相同)。完成后,您可以使用heroku xxxx命令(假设您安装了heroku Toolbelt),并可以像往常一样通过git push heroku master推送到heroku。作为快捷方式,如果使用命令行工具,可以键入:

heroku git:remote -a project

这里,project是您的Heroku项目的名称(谢谢,Panic上校)。您可以通过传递-r remote_name来任意命名Git remote。

[更新]

正如Ben在评论中提到的,远程器不需要命名为heroku,gem命令就可以工作。我检查了源代码,它的工作原理如下:

如果您通过--app选项(例如heroku info--app myapp)指定应用程序名称,它将使用该应用程序。如果您通过--remote选项(例如heroku info--remote production)指定Git远程名称,它将使用与该Git远程关联的应用程序。如果您没有指定任何选项,并且在Git配置文件中设置了heroku.remote,则它将使用与该远程关联的应用程序(例如,要将默认远程设置为“production”,请在存储库中使用Git-configheroku.Remoteproduction,heroku将运行Git-config heroku.remote以读取此设置的值)如果不指定任何选项,gem将在.git/config文件中找不到任何配置,并且gem仅在git remotes中找到一个URL中包含“heroku.com”的远程设备,它将使用该远程设备。如果这些都不起作用,则会引发一个错误,指示您将--app传递给命令。

别忘了,如果你也在一台以前没有设置heroku的机器上

heroku keys:add

否则你将无法推动或拉动回购。

为旧应用程序设置新部署系统时需要注意两件事

1.检查您的应用程序对Heroku的访问权限(尤其是应用程序)

heroku apps

它将列出您可以访问的应用如果您是第一次设置,您可能需要

heroku keys:add

2.然后设置git遥控器

对于已经创建的Heroku应用程序,您可以使用Heroku git:remote命令轻松地将远程添加到本地存储库中。您只需要Heroku应用程序的名称:

heroku git:remote -a appName

您还可以使用gitremoterename命令重命名远程:

git remote rename heroku heroku-dev(you desired app name)

然后您可以使用gitremote命令确认为应用程序设置了远程

 git remote -v

用于现有存储库

键入终端

$heroku git:remote-示例

我在github和heroku中有我的项目,用于上传heroku:

heroku git:remote -a <project>

文件是:

https://devcenter.heroku.com/articles/git