我正在尝试分叉我现有的应用程序,这样我就可以创建一个与生产应用程序分开的暂存环境,无论我尝试什么,我都会遇到错误。
我肯定有一个heroku工具箱,我肯定已经登录了。
当我运行git remote -v
时,我明白了:
origin https://github.com/account/mysite.git (fetch)
origin https://github.com/account/mysite.git (push)
production git@heroku.com:mysite.git (fetch)
production git@heroku.com:mysite.git (push)
当我运行heroku fork -a production staging
时,我明白了:
Failed to fork app production to staging.
! WARNING: Potentially Destructive Action
! This command will destroy staging (including all add-ons).
! To proceed, type "staging" or re-run this command with --confirm staging
如果我输入staging
,我就明白了:
Deleting staging... failed
! You do not have access to the app staging.
我感到困惑的是为什么它认为一个名为'staging'的应用程序存在,我正试图把它作为一个新环境分叉。
当我在终端尝试其他建议时,我得到了这个:
heroku fork -a production --confirm staging
! Mismatch between --app and --confirm
Failed to fork app to .
! Confirmed app staging did not match the selected app .
当我尝试heroku apps:info
时,我得到了:
! App not found
这看起来也很奇怪。如果我指定heroku apps:info --app staging
或heroku apps:info --app production
,那么我会
! You do not have access to the app staging.
当我尝试git remote rm staging
时,它只是确认没有“暂存”环境:
error: Could not remove config section 'remote.staging'
我似乎也没有“生产”方面的工作,就像我git push production master
我得到
! No such app as mysite.
但是当我访问http://mysite.herokuapp.com时,它绝对存在!
这让我发疯了 - 有人可以帮忙吗?
答案 0 :(得分:7)
staging
应该是您正在创建的应用程序的名称,而不是git remote的名称。您需要选择一个唯一的名称。我通常使用mysite-prod
和mysite-staging
作为我的应用程序名称。