2013-03-13 55 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更具體的答案。

相關問題