Контроль версий (SVN) и управление примерами данных? - PullRequest
1 голос
/ 13 октября 2011

Мы разработали настольное приложение, которое собирает измерения с научного прибора.

Измерения хранятся в одном файле базы данных SQLite и некоторых связанных двоичных файлах данных.

Приложение поставляется с некоторыми примерами данных, поэтому я поместил предварительно заполненные файлы под контроль версий (мы используем Subversion / Ankh / Tortoise).

Но теперь мой коллега жалуется, что каждый раз, когда он обновляет проект, любые изменения, которые он мог внести в базу данных, перекрываются образцом базы данных в репозитории.

Как мы можем управлять этим так:

  1. Когда мы делаем релиз, мы можем убедиться, что включены правильные примеры данных из хранилища.

  2. Между выпусками наши рабочие копии базы данных не перезаписываются при обновлении нашего кода из хранилища.

1 Ответ

2 голосов
/ 14 октября 2011

Посмотрите на наличие данных в форме сценариев SQL в вашем репо, управляемых с помощью инструмента управления изменениями базы данных, такого как dbdeploy

Контроль версий великолепен для текстовых файлов и не оченьс двоичными файлами.Все, что может быть представлено в виде текста, должно быть сделано так.И все, что может быть сгенерировано в процессе сборки - dll, jar и т. Д. И db, должно быть артефактами вашего процесса сборки и поддерживаться вне репо.

...