vodnicear
@vodnicear

Как объединить несколько версий текста в одну?

Ситуация такая, есть некии текст, и есть пользователи которые его редактируют.
Когда один пользователь редактирует текст, новая версия сохраняется в БД и ждет одобрения.

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

Вопрос в том как это объеденять в конце?
-------
управление версиями, их одобрение нужно реализовать на сайте
на сколько знаю git с БД не работает, может быть есть еще способы
  • Вопрос задан
  • 131 просмотр
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега Веб-разработка
{PHP, MySql, HTML, JS, CSS} developer
Как-как... Руками в итоге. Все непересекающиеся принятые правки мержить по порядку добавления, пересекающиеся - руками в режиме разрешения конфликтов версий... И должен быть батька над проектом, который склеивает твердой рукой, сбрасывая в пропасть недостойных убирая лишнее.
Ответ написан
Lobotomist
@Lobotomist
Software Developer
Для объединения двух версий текста можно использовать утилиту diff3, парсить ее вывод, а для пользователя реализовать интерфейс для просмотра ее вывода и решения конфликтов. Готовых библиотек для представления diff в веб я не знаю, но, вероятно, таковые имеются.

diff3 mine older yours, где mine and yours - версии для слияния, а older - базовая версия.

Учитывая, что вы хотите хранить историю версий текста - может быть имеет смысл использовать для этого, собственно, гит репозиторий под капотом - он для того и предназначен. В зависимости от специфики можно как иметь по отдельному репозиторию для каждого текста, так и один общий для всех. И в нем хранить историю версий и через него же мерджить версии. Возможно, получится найти и использовать готовые интерфейсы для работы с git через веб, либо надо будет написать свой. А в базе можно хранить только финальный текст, без истории.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽
25 апр. 2024, в 09:29
2500 руб./за проект
25 апр. 2024, в 09:27
4000 руб./за проект
25 апр. 2024, в 09:20
10000 руб./за проект