2012-08-28 33 views
1

我目前有四個XML文件用於構建我的依賴注入容器,它基於我的應用程序運行的環境。依賴注入配置應該受版本控制嗎?

  • base.xml是作爲一個基礎我的默認配置:
    • dev.xml其中包含適用於我們其中包含了適用於測試覆蓋/說明當地的流浪者開發環境
    • staging.xml的覆蓋環境
    • production.xml其中包含生產服務器的覆蓋

我不完全確定這些文件應該與應用程序代碼一起在版本控制之下。所有敏感數據都存儲在CVS中忽略的配置文件中,因此顯示敏感數據不是問題。相反,我並不完全確定,在我的應用程序運行的每個環境的版本控制下有一個xml文件是要走的路。

例如,我們正在考慮將分段和測試服務器分開,這意味着需要爲新服務器創建一個額外的.xml配置文件。如果我們想在未來測試不同的系統(操作系統,Web服務器,數據庫等),這可能意味着我們應該爲每個要測試的系統創建一個.xml文件。

我只是偏執狂或在這個問題上達成共識?

+3

您是否希望備份此配置?你想讓所有的開發者使用這些相同的文件嗎?你想在自動構建過程中使用這些文件嗎?如果您對這些問題中的任何一個回答「是」,則這些文件都屬於您的VCS。 – Steven

+1

@Steven:這是一個答案,而不是一個微不足道的評論;) – jgauffin

回答

4

我不明白你爲什麼不讓你在源代碼控制下的不同環境的配置文件。我認爲將配置文件保存在源代碼管理中是一種很好的做法,這樣您就不依賴駐留在某人系統或網絡共享驅動器上的文件。另外,如果您需要恢復舊版本或檢查突然發生的所有事情的歷史記錄,則擁有源代碼管理歷史記錄是您的可靠朋友。

我認爲控制這些文件是最符合你的利益的,即使它們從不改變。