2010-07-14 46 views
0

這是一個關於遷移版本的導軌問題導軌回滾永久遷移然後分支

所以我有一些已經存在的遷移。即在我的DB /遷移/文件夾,我有一些文件是這樣的:

  • 1_add_products.rb
  • 2_add_customers.rb
  • 3_add_addresses.rb
  • 4_add_tags.rb

和我已經運行了「rake db:migrate」,所以當前版本是4.我想永遠回到版本2並從那裏開始分支。所以我做了「rake db:migrate VERSION = 2」,並且正確地反映了版本2的變化。但是,每當我運行「rake db:migrate」時,它會運行所有4次遷移並將我重新放回到版本4

有沒有辦法永久地返回到一個修訂版,然後開始從那裏新分支?我可以簡單地刪除遷移3 & 4後,我回滾到第2版?

我問的原因是因爲在回滾到版本2之後,我需要添加新的遷移並運行「rake db:migrate」,並且我絕對不希望遷移3和遷移4包含在內。

回答

0

刪除應該工作得很好。只要確保你已經回到了無處不在(開發,分期,製作),否則你會遇到一些奇怪的問題。

是的,絕對回滾那麼刪除,否則你的數據庫會認爲它處於一個實際上並不存在的狀態。