我有一個實體框架5 DB-First項目,我們現在剛剛從TFS遷移到Git。在TFS中,我們使用RedGate的SQL Source Control來保持數據庫的最新狀態,這是一種很好的做法,假設每個人都在發展主幹,因爲分支是如此困難,所以幾乎每個人都在研究最新版本的數據庫架構。如何在首先使用db時管理不同分支中的數據庫模式更改?
但是,現在我們使用Git了,我希望數據庫更改成爲功能分支的一部分。由於Git允許從分支到分支的這種輕鬆跳躍,我希望開發人員可以從包括數據庫更改在內的功能跳轉到沒有這些更改的功能。代碼更新得很好 - 但是數據庫呢?我懷疑RedGate的產品會在這樣的一個閃存中處理上下遷移 - 或者我錯了嗎?如果RedGate無法處理這些上下遷移,那麼在我的代碼中做正確的方法是什麼?
順便說一句,我沒有搜索其他類似的問題,並找到this one,雖然答案是包括在功能分支遷移腳本。對於「向上」遷移而言,這一切都非常好,但是如果我是在一個分支中編寫功能,那麼我切換到另一個分支來對其他人的請求進行代碼審查,然後對我做出的更改我的分支中的本地數據庫應該以某種方式恢復。但是如何?
更新: RedGate通過引用this article回覆支持電話。基本上,如果你想切換分支,你必須取消鏈接/重新鏈接你的數據庫從源代碼管理。而且你不能創建或合併分支。總之,呃。有更好的建議嗎?