2013-03-13 57 views
2

简单的问题,我做我所有的工作在我的本地在家里的电脑,然后我git push我的回购github,然后在我的Ubuntu服务器上我做git pull获取内容,但这会导致不一致,因为它拉动开发我总是必须进入并改变模式。有没有办法做到这一点,所以我可以在开发模式下工作,但推到回购生产模式?谢谢。我如何在开发模式下使用Rails应用程序,但将其推入生产模式?

+1

混帐不具备轨道ENV的知识。你在谈论使用不同的分支机构? – jvnill 2013-03-13 04:58:36

回答

0

这不是一个git的问题。 Rails环境('生产','开发','测试')会影响代码的运行方式,但代码不会改变。

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

你可能没有使用相同的命令主办的WEBrick您的网站的服务器上,而是使用类似的Phusion客运,它可以(应该)被配置为启动在生产模式下您的应用程序。

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

0

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

哪里做这取决于你的生产部署的环境,你的服务器是如何配置的。例如Passenger默认为生产模式,配置取决于您的服务器(Apache,nginx)。如果你手动启动命令行的服务器(通过rails s thin或类似的规定),那么你就可以在你的shell启动文件(.profile或类似的东西,这取决于你的shell)进行配置。瘦也可以选择使用环境参数,如-e production

如果您提供您的生产环境中如何工作的更多信息,你可能会得到在何处设置RAILS_ENV更具体的答案。

相关问题