2012-10-06 143 views
5

我在Heroku上有一个项目。这个项目允许我更新一个json文件。如果通过项目的Web界面更新heroku上的内容。我看到更新。我可以关闭浏览器,打开它并更新。如何访问Heroku上的文件?

现在,我想推动一些项目。如果我做了json文件将被覆盖。所以,我首先从heroku获取当前项目状态。 heroku提示说一切都是最新的,这是不正确的。我改变了json文件。

使用heroku run ls static/json/显示文件,在推送到heroku以避免破坏网络更新之前,我需要获取此文件。

回答

8

我不认为这是可能的,因为一个原因:Heroku dyno有它自己的ephemeral filesystem与git签出最新的代码。然而,它不能以其他方式绕过,不可能将dyno中的文件更改检入到git仓库中。这就是为什么你会得到“已经最新”的回复。当试图拉,因为heroku git远程是客栈同步与您当地的回购。

您应该将文件存储在亚马逊的S3或数据库中,或者将数据写入数据库,以便在heroku部署之间保留它。

0

您可以运行heroku run bash并备份文件,然后再次部署您的应用程序运行heroku run bash并删除新文件并将其替换为您备份的旧文件。希望它有帮助