2009-12-21 76 views
2

我有一個基於Web的應用程序,我想通過使用公共svn主機來開源,問題是該項目包含配置文件,我寧願保留一些私有的值。處理這個問題的最好方法是什麼?SVN私人文件

理想情況下,我希望能夠導入修訂版,而不必每次都用一個文件剝離私有數據替換文件。

回答

6

維護兩個配置文件:

  • 一個命名,比如說,config.php
  • 另一個名爲config.dist.php

config.php是您的生活設置文件的形式存儲您的運行時配置的私人數據,路徑等等。

config.dist.php是相同的文件,但具有默認或虛擬配置設置。

每當您的項目獲得新的配置設置時,都會在您的實時config.php文件中對其進行測試,然後將其複製到.dist文件中,併爲其指定一個虛擬值。

將您的版本控制設置爲忽略config.php

這樣,您永遠不會在存儲庫中擁有私人數據,但簽出該項目的人有一個默認配置文件可立即啓動。

4

用戶特定的配置文件不應該是FOSS項目源的一部分。如果您想對它們進行版本控制,請將它們保存在單獨的私人存儲庫中。

+0

爲什麼?您可以爲文件文件提供一組具有密碼或數據庫憑據的用戶樣本以用於測試目的。 – cimnine 2009-12-21 13:17:27

+0

在這種情況下,它不是用戶特定的 - 我沒有說配置文件不應該是項目的一部分。 – 2009-12-21 13:24:18