Таблица SQLite с Мерзавцем, объединяющимся

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

Позже я хотел бы, чтобы изменения в файле журнала были слиянием автоматически с оригиналом.

Это собирается работать? Автоматический двоичный файл объединится в аварийное завершение файла SQLite, как правило?

6
задан git-noob 15 February 2009 в 09:10
поделиться

3 ответа

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

Единственное автоматическое слияние, которого будет делать попытку мерзавец, объединяется текстовых файлов. Файл журнала является (обычно) текстовым файлом, итак, почему бы не поместить это непосредственно в мерзавца и не в базу данных сначала?

7
ответ дан 8 December 2019 в 02:46
поделиться

Я сомневаюсь, что любая универсальная система управления версиями (мерзавец, svn, cvs, и т.д.) может обработать базу данных в способах, которыми Вы описали. Если Вы настаиваете на том, чтобы использовать мерзавца для слияния баз данных, Ваш лучший выбор состоит в том, чтобы преобразовать базу данных в текстовый файл, объединить текстовый файл и воссоздать базу данных. Например,

sqlite3 .dump > dump_file.txt

может создать все sql операторы, необходимые для переделывания базы данных, затем Вы действительно наполняете в выведенный файл, затем делаете sqlite базу данных с

sqlite3 newdatabase.db < modified_dump_file.txt

Необходимо смочь автоматизировать это использование своего рода рычага мерзавца (я не слишком знаком с мерзавцем).

5
ответ дан 8 December 2019 в 02:46
поделиться

Нет никакого способа объединить двоичные файлы правильно это в общем случае, таким образом, мерзавец не может и не делать этого.

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

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

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

1
ответ дан 8 December 2019 в 02:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: