我正在不同的分支上工作,並且在這些分支上有遷移文件。有一個schema.rb
文件。無論分支是否運行遷移
我的問題是,無論我目前在哪個分支,運行遷移都會以某種方式更改schema.rb
,就好像它考慮了所有分支上的所有遷移一樣。
說,我創建了Foo
模型分支A
與相應的表foos
,運行遷移並切換到另一個分支。
我當前分支B
,那裏沒有foos
表運行一些其他遷移(說創建表bars
),創建它:
# while on branch B
Foo
#=> NameError: uninitialized constant Foo
ActiveRecord::Base.connection.table_exists?('foos')
#=> true
問:我如何schema.rb
只根據改變在當前分支上遷移?
我想回滾這裏是一個有效的選擇,但我想建立一些更穩健,讓我不必每次我切換分支的時間來回滾。你能想到什麼嗎? –
@AndreyDeineko如何編寫git鉤子腳本來比較主分支和當前分支之間的遷移版本和回滾。它在結帳時執行新分支 –