![](/img/trans.png)
[英]How do you manage secret keys and heroku with Ruby on Rails 4.1.0beta1?
[英]How do you manage Ruby on Rails migrations with a team of developers?
我們有一個開發人員團隊,他們每個人都將使用Rails工具為我們的系統開發數據庫遷移。 遷移似乎最初是管理數據庫模式更改的一種很好的方法,但是隨着我們的繼續,以分布式方式管理更改變得更加困難。 如果我們每個人都自己開發遷移,我們如何協調發生的問題呢?
要具體說明問題,請考慮以下方案時間表:
這里可能會出現許多問題,特別是如果兩個遷移文件的更改發生沖突,但最基本的問題是有些人在上午9:00遷移時已經運行了上午10:00的遷移。與遷移相關聯的時間戳當然是在創建文件時,而不是在簽入時,這會弄亂Rails遷移器。
這是一個可修復的問題,但解決方案可能有很多不同的選擇。 解決這個問題的最佳方式(或至少是一種好方法)是什么?
這似乎更像是團隊溝通問題,或者是一個簡單的流程問題。 遷移版本從序列號更改為時間戳,以避免開發人員A和B使用相同版本創建遷移的問題。
為了避免遷移沖突:
現在你的場景看起來像這樣:
永遠不要推送到共享倉庫而不確保您的更改不會引入沖突或破壞構建。
我們總是創建一個bootstrap rake任務。 此任務將刪除開發數據庫,依次運行所有遷移,然后使用虛假測試數據填充它。
除了要在您的應用中使用大量內容外,您還必須運行所有遷移。 如果在提交內容之前執行此操作,則可以確保所有遷移也適用於其他遷移。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.