我是Redgate的新手,希望找到一些關於如何最好地設置我的數據庫存儲庫的幫助。redgate數據庫依賴關係
我有多個站點和多個數據庫,他們都有自己的存儲庫。數據庫可以與一個或多個網站相關聯。
我用以下方式創建了我的存儲庫;
wwwroot/webapps/site1
wwwroot/webapps/site2
wwwroot/webapps/site3
wwwroot/databases/db1
wwwroot/databases/db2
wwwroot/databases/db3
wwwroot/databases/db4
例如,site1,2,3全部使用db1,但site2也與db2相關聯。針對db1所做的更改適用於所有網站,但我希望能夠檢查對db1的更改,而不管我正在使用哪個網站存儲庫。
創建時這一切都只是正常建立到每一個人倉庫,但我想我的部署代碼和數據庫更改爲同一版本的一部分。
目前,我有一個TFS構建(TFS 2015使用基於任務的構建),其部署我的代碼,我必須確保任何相關的數據庫更改爲另一版本的一部分單獨部署。
是否有可能以某種方式將我的代碼構建鏈接到數據庫更改讓他們一起部署?我的存儲庫設置是否正確,或者有更好的方法來設置它?任何指導將不勝感激。
更多信息來描述我的問題。
Code repository
wwwroot/webapps/site1/feature_A
wwwroot/webapps/site1/feature_B
wwwroot/webapps/site2/feature_C
DB repository
wwwroot/databases/db1/feature_A
wwwroot/databases/db1/feature_C
使用上面的例子;
feature_A(代碼存儲庫)依賴於feature_A(DB存儲庫)。目前的設置將要求我爲我的代碼創建兩個構建版本,另一個爲我的數據庫創建。
feature_B(代碼資源庫)沒有依賴性
feature_C(代碼庫)是依賴於feature_C(DB信息庫)。
我只能通過指定功能創建一個版本,因爲我的代碼和DB庫是分開的,我不得不做這兩個版本。
我想通過創建一個構建,將推動我的數據庫和代碼,同時改變了實現上述。我不知道如何做到這一點,或者如果可能的話。如果這是不可能的,有人可以提出一個替代方案。
我不希望裏面添加我的網絡文件夾中的DB庫,因爲在同一個數據庫用於跨多個網站,這將導致出現問題。
例如下面的工作對我來說卻意味着DB1庫將被創建多次。
wwwroot/webapps/site1\Code\
wwwroot/webapps/site1\DB1\
wwwroot/webapps/site2\Code\
wwwroot/webapps/site2\DB1\
wwwroot/webapps/site2\DB2\
wwwroot/webapps/site3\Code\
wwwroot/webapps/site3\DB1\
你就不能有第二個建設任務/步驟爲您的TFS的一部分構建部署數據庫?它不需要是完全獨立的版本。 –
你的意思是你想在數據庫發生變化時觸發一個TFS構建?你使用的是哪個版本的TFS?你使用XAML構建還是基於任務的構建? –
@大衛 - 我不能做你建議的內容,因爲構建必須指向一個功能。由於代碼和數據庫回購是分開的,我不能在第二回購中包含另一點。 –