2011-10-13 53 views
1

我們開發了一種收集科學儀器測量結果的桌面應用程序。版本控制(SVN)和管理樣本數據?

度量值存儲在單個SQLite數據庫文件和一些關聯的二進制數據文件中。

該應用程序附帶一些示例數據,因此我已將預填充文件置於修訂控制下(我們使用Subversion/Ankh/Tortoise)。

但現在我的同事抱怨說,每次他對項目進行更新時,他對數據庫所做的任何更改都會被存儲庫中的示例數據數據庫破壞。

我們如何管理這個如此:

  1. 當我們做一個發佈,我們可以確保適當的採樣數據從存儲庫包含。

  2. 在版本之間,當我們從存儲庫更新代碼時,我們的數據庫工作副本不會被覆蓋。

+3

在SVN中存儲實際正確的數據庫 - 作爲從數據庫查詢中導出的SQL作爲文本形式的輸出。設計一個構建過程,將此導出的SQL重新導回。考慮查看像Jenkins這樣的構建鏈工具來幫助... – therobyouknow

回答

2

看看在你的回購SQL腳本的形式,其具有的數據,通過像dbdeploy

版本控制數據庫變更管理工具管理是偉大的文本文件,並沒有因此與二進制文件。任何可以表示爲文本的東西都應該這樣做。任何可以通過構建過程生成的東西 - dll,jar等和db,都應該是構建過程的工件,並且在您的倉庫之外維護。