我們在我們的服務器上運行2個不同的環境 - 說,production.mydomain.com和staging.mydomain.comRuby on Rails *特性*部署的最佳實踐?
臨時環境是幾乎相同的生產環境,但它往往有幾個新的特點正在被審查(例如new_user_profile,image_tagging等)。這些功能在不同的時間被客戶單獨接受。
什麼是推動任何單個功能(例如new_user_profile)從分期到生產的最佳方式?
我們的設置如下所列,但想聽到的替代品,你還可以使用:
- Ruby on Rails的
- 的Git(我們有幾個特性分支,其中獲得合併成一個「分期」分支當接近完成時)
- 卡皮斯特拉諾,與多級分機。
我們曾嘗試以下兩種方法,無論是其中的工作非常好:
- 有很多,如果在我們的代碼,例如/ else語句如果new_user_profile ....
- 單獨部署git分支(例如分支new_user_profile)到分期,得到這個審查,然後合併到生產
傢伙從learnable.com已經發布了功能翻轉寶石我們使用的基礎上,Etsy的是如何做到這一點:https://開頭的github .com/pda/flip – 2012-03-21 08:58:01
謝謝,flip gem看起來不錯,Martin Fowler的文章很有幫助。 – 2012-03-23 04:30:44