2016-08-16 4 views
0

У меня есть mysql db с таблицей Foo и bar поле в виде текста.Как использовать git для управления историческими обновлениями в текстовом поле DB, например mysql?

Я хочу сохранить историческое значение каждого изменения поля.

На данный момент у меня есть таблица hirtory, и я вставляю в db каждую версию перед обновлением bar.

Но глупо хранить все версии, когда единственное изменение - одна буква для примера.

Я хочу использовать git вместо таблицы hirtory, как я могу это сделать?

PS: Я на приложении с рубином на рельсах 4.2

+0

Я предполагаю, что вы просите об этом вопрос, поскольку в столбце хранится большое количество текста (возможно, для вики-страницы или, может быть, что-то другое). Я бы предложил взглянуть на то, как другие решают одни и те же (или подобные) проблемы. [Этот ответ] (http://stackoverflow.com/a/323091/848668) содержит пару ссылок, которые можно использовать в качестве отправной точки и дать вам некоторые идеи. – br3nt

+0

не очень длинный текст, это зависит ... Это статьи правила/закона – Matrix

ответ

2

не делают. Git предназначен для управления исходным кодом, а не содержимым базы данных. Если вам нужно отслеживать изменения в вашей базе данных, использование таблицы истории в порядке (как вы это делаете сейчас), но также есть большой камень, который позаботится об этом: https://github.com/airblade/paper_trail

+0

Я не понимаю, почему нет ... – Matrix

+1

AFAIK, git не различает простой текст и исходный код. Это небольшой вопрос в отношении вашего ответа, но важно позвонить. Я полагаю, что OP может разработать систему, в которой используется дамп SQL (обычный текст), а затем git-версии. Но нет ничего, что помешало бы кому-то использовать git для управления историей простого текста (не исходный код). – Jack

+0

Да, git управляет текстовыми файлами - будь то исходный код или что-то еще. Но не базы данных. Да, вы могли бы сделать дамп SQL и отслеживать это в Git, но это все еще плохая идея. Матрицу вы можете подробнее рассказать о своем случае использования - почему вы хотите сохранить эти версии и что такое домен, а не абстрагировать его как Foo и bar? Тогда мы сможем помочь с лучшим решением. –