0

我有一個Rails 3.2.3應用程序,我在windows機器上使用git_bash作爲cli和mingw32作爲環境(使用railsinstaller安裝此env)和postgres as db。 但rmagick存在一些問題,無法使用它,儘管minimagick按預期工作。Rails:將開發環境從windows(mingw32)移到OS X mountain lion

現在,我要將應用程序移動到運行OS X Mountain Lion的新Mac機器上。 我已經使用rvm在OS X上安裝了rails 3.2.8和ruby。我需要做什麼來更新我的應用程序到rails 3.2.8和安裝db和其他寶石,我應該刪除或不刪除gemfile.lock和什麼寶石我需要刪除或添加或更改版本號。等

我是新來的鐵軌,請幫助

謝謝!

我應該使用自制軟件安裝postgres還是從http://www.postgresql.org/download/macosx/ 下載這是一種安裝postgres,這些方法的優點和缺點的優先方式。

回答

0

Gemfile.lock給出用於確保應用程序的所有副本使用相同gem版本的寶石列表。

因爲我是唯一一個在這個應用程序工作,它還沒有在生產。因此,對我來說,更有意義的是我調整了Gemfile.lock並指定了我現在想要的更新版本的gems。

事情我做

在我的TMP /目錄清理了一些數據後複製我的應用程序目錄從我的Windows機器(TMP /目錄有數據的100米)。

安裝imagemagick使用brew install imagemagick

使用brew install postgresql

生成使用rails new blog -d postgresql 更改根據PostgreSQL的database.yml文件,因爲它需要我的MAC用戶爲用戶名一個示例應用程序安裝postgresql。 運行示例博客應用程序,它工作正常。創建了一個腳手架並輸入了數據,一切正常。

複製的內容Gemfile.lock的從博客應用程序,並在我的應用程序的Gemfile.lock的

更改後的版本在我的Gemfile從3.2.3軌的粘貼到最新的3.2.8版本。改變了一些其他寶石的版本。用'rmagick'代替'minimagick'。 (我在Windows上安裝rmagick gem時遇到問題,minimagick gem以某種方式在Windows上使用舊版本的imagemagick)。 更改了database.yml。

運行rake db:create:all創建所有的db。

運行rake db:migrate

運行bundle並安裝了所有的依賴條件。現在

運行rails s

一切正常:)

1

只要您的應用中沒有任何Windows /計算機專用代碼,您只需要執行bundle install即可。

關於Postgres,只要它在$PATH上,從哪裏得到它都沒有關係。如果你已經使用Homebrew,那麼只需要做brew install postgres就行了。

+0

我應該刪除Gemfile.lock的或沒有,因爲它有很多引用例如。 'bcrypt-ruby(3.0.1-x86-mingw32)' – StarWars

+0

@StarWars:我會嘗試'bundle install'並查看它是否有效。 Bundler不會在您的Mac上安裝Windows文件。如果它不給你bcrypt,那麼是的,絕對會破壞你的Gemfile.lock。請報告回來,因爲這是關於使用Windows的好消息! – jmdeldin

+0

我做了幾件事使它工作,我很高興它工作(沒有檢查所有的東西,因爲我可能需要設置幾個與測試有關的寶石,但運行'rails s'工程,所以我希望一切沒關係)。我不能在評論中寫出很多信息。所以我在我的回答中解釋了對我有用的東西。謝謝! – StarWars

相關問題