Heroku / Node - 如何在服务器上添加git commit

时间:2017-08-02 09:14:17

标签: javascript node.js git heroku

我正在学习Node和Git,我有一个Heroku应用程序正在读取和写入服务器上的本地文件(一个非常简单的JSON数据库)。

如果我在本地将文件添加到我的gitignore,它会从我的Heroku应用程序中消失并导致应用程序出错。但如果我不将它添加到我的gitignore,它会覆盖我在本地的旧版本(在服务器上)的最新版本。

显然问题是因为服务器文件上的更改未提交。但是,我不知道如何远程操作,或者甚至可能。我可以在本地运行heroku git:clone,但是我无法运行heroku:git add。

我该如何处理?

1 个答案:

答案 0 :(得分:0)

通常,您不应提交将由服务器修改的文件 这似乎不是一个好主意,因为正如你所说,这个文件将被下一次推送所覆盖。

通常您不希望从部署分支提交,因此从服务器使用 git 并不是一个好主意(我怀疑您可以使用Heroku)。

相反,您可以让您的应用检查文件是否存在,如果不在服务器上创建该文件。

这将在您自己管理的专用服务器中运行,但Heroku的工作方式不同。您对Heroku存储库的每次推送实际上都会捆绑您的应用程序,然后在dyno上启动它,此过程将覆盖所有文件,包括您的数据库JSON文件,这将不再持久。

所以我认为除了切换到另一种存储方法别无选择,例如订阅免费的Heroku postgreSQL 计划或您喜欢的其他数据库。