【问题标题】:How do I work on my Rails app in development mode, but push it in production mode?如何在开发模式下处理我的 Rails 应用程序,但在生产模式下推送它?
【发布时间】:2013-02-28 22:01:58
【问题描述】:

简单的问题,我在家里的本地计算机上完成所有工作,然后我 git push 到我在 github 上的 repo,然后在我的 Ubuntu 服务器上我执行 git pull 来获取内容,但这会导致不一致因为它引入了开发模式,我总是必须进入并改变。有没有办法让我可以在开发模式下工作但将它推到回购生产模式?谢谢。

【问题讨论】:

  • git 不了解 Rails 环境。你是说使用不同的分支吗?

标签: ruby-on-rails ruby-on-rails-3 git github


【解决方案1】:

这不是 git 问题。 Rails 环境(“生产”、“开发”、“测试”)会影响代码的运行方式,但不会更改代码。

当您在开发机器上运行 rails server 时,应用程序会以 development 模式启动,因为这是该命令的默认设置。

您可能没有使用相同的命令在服务器上的 WEBrick 上托管您的网站,而是使用诸如 Phusion Passenger 之类的东西,它可以(应该)配置为在生产模式下启动您的应用程序。

如果环境设置正确,则在加载应用时正确选择了config/environments/#[RAILS_ENV}.rb文件,并从config/database.yml中选择了正确的数据库源。

【讨论】:

    【解决方案2】:

    Rails 应用默认为development,除非您将RAILS_ENV 变量设置为production。 Git并没有真正考虑到这一点。在您的生产机器上,您需要设置RAILS_ENV

    在哪里执行此操作取决于您的生产部署环境以及您的服务器的配置方式。乘客默认为生产模式,配置取决于您的服务器(Apache、nginx)。如果您从命令行手动启动服务器(通过rails s thin 或类似的东西),那么您可以在shell 的启动文件中配置它(.profile 或类似的东西,取决于您的shell)。 Thin 还可以选择采用类似-e production 的环境参数。

    如果您提供有关生产环境如何工作的更多详细信息,您可能会得到更具体的答案来设置RAILS_ENV

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-27
      • 1970-01-01
      • 2015-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-16
      相关资源
      最近更新 更多