Heroku 认为应用程序在同一个文件夹中

Heroku thinks app is in same folder

我从下面引用了这个很棒的线程来分叉我的 Heroku 应用程序并克隆 github 存储库以具有两个单独的 github 存储库和 Heroku 应用程序用于生产和开发。

Trying to heroku git:clone after heroku fork yields an empty repository

$ git clone git@heroku.com:oldapp.git -o old newclonedapp
$ cd newclonedapp
$ heroku git:remote -a newclonedapp
$ git push heroku master

然后我手动将我的文件夹 newcloneapp 移动到它自己的目录中。无论如何,我仍然收到以下错误:

 !    Multiple apps in folder and no app specified.
 !    Specify app with --app APP.

我该如何解决这个问题?

如错误消息所述,在您使用的命令中包含 --app newcloneapp 运行 确保它适用于正确的 heroku 应用程序。

通过将 newcloneapp 文件夹复制到它自己的目录中,您仍然保留应用程序的 git 配置;因此这个文件夹中有多个 heroku 应用程序。

您可以通过编辑 .git/config 文件并删除带有 url = git@heroku.com:your-app-name.git 行的部分来删除其中一个应用程序。

在我的一个 heroku 应用程序中,.git/config 文件中有以下配置:

[remote "staging"]
  url = git@heroku.com:my-app-name.git
  fetch = +refs/heads/*:refs/remotes/staging/*
[remote "production"]
  url = git@heroku.com:my-app-name.git
  fetch = +refs/heads/*:refs/remotes/staging/*

有了这个,我可以从同一个 repo 推送到 stagingproduction。看起来您只需要文件夹中的一个应用程序;所以你应该只有上述部分之一。