如果我执行heroku repo:reset --app appname
,在让我再次输入appname后,它似乎会重置。但是如果我运行heroku run bash --app appname
,然后执行ls
命令,我所有的源代码似乎仍然存在。根据这个heroku page,这个命令应该删除heroku上我所有的appname源代码。为什么没有发生这种情况?
如果我执行heroku repo:reset --app appname
,在让我再次输入appname后,它似乎会重置。但是如果我运行heroku run bash --app appname
,然后执行ls
命令,我所有的源代码似乎仍然存在。根据这个heroku page,这个命令应该删除heroku上我所有的appname源代码。为什么没有发生这种情况?
1条答案
按热度按时间xoshrz7s1#
你误解了这个命令的作用。
如果你使用
git push
部署到Heroku,你会推送到一个Git仓库。当这发生时,Heroku会构建一个application slug:Slug是应用程序的压缩和预打包副本,经过优化后可以分发到dyno管理器。当您git push到Heroku时,您的代码会被slug编译器接收,它会将您的存储库转换为slug。然后扩展应用程序,并将slug下载并扩展到dyno以供执行。
您的应用程序从应用程序段运行,而不是原始源代码。
heroku repo:reset
重置底层Git仓库。它不会对编译后的slug做任何事情,也不会缩放你的dynos。如果你尝试clone your app,你应该会发现远程仓库是空的。目前还不完全清楚你想做什么,但你可能会寻找
heroku apps:destroy
,它被描述为“永久销毁应用程序”。