我們是一個由4名開發人員組成的團隊,負責同一個項目。我們使用Entity Framework來訪問我們的SQL數據庫後端。我們將連接字符串存儲在web.config中。在Silverlight項目中存儲EF數據庫連接字符串
每個開發人員都在測試他自己的本地SQL服務器數據庫的代碼。這意味着每個開發人員在web.config中都有自己的SQL Server連接字符串。我通常在我的機器上有幾個不同的數據庫副本,來自不同場景的數據,我通過編輯連接字符串來切換數據。一個數據庫可能是空的,另一個可能包含大量的測試數據等等。
我們面臨的問題是我們意外地將web.config檢入到源代碼控制中,這意味着當一個團隊中的其他開發人員從源代碼控制中檢索到最新代碼時,他的本地web.config - 與他的連接字符串 - 將被來自其他開發人員的覆蓋。 (我們正在使用AccuRev,其中沒有好辦法忽略某些文件)。
我想過了幾個不同的hackish的解決方案的:
- 創建一個新的配置文件,我們存儲計算機特定的配置。我們不檢查源代碼管理中的這個文件。或者我們使用其他名稱進行檢查。
- 將web.config重命名爲源代碼管理中的web.config.default(或其他)。在從源代碼控制中籤出後,開發人員必須將web.config.default重命名爲web.config,然後才能運行。
當然必須有som的標準方式來處理這個問題嗎?