Перейти к содержимому

Конфликты

Конфликт возникает, когда одну и ту же заметку изменили в двух местах с момента последней успешной синхронизации. Задача Engram здесь не в том, чтобы гадать. Он должен надёжно обнаружить конфликт и предоставить выбор вам.

Engram отслеживает родительскую версию каждой правки (под капотом это вектор версий). Когда вы отправляете изменение, сервер проверяет, остаётся ли ваша родительская версия текущей. Если нет, ваша отправка фиксируется как конфликт вместо того, чтобы перезаписать данные.

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

Откройте Центр синхронизации. Заметки с конфликтами появляются в очереди конфликтов. Нажмите на заметку, чтобы открыть интерфейс разрешения. Доступно пять вариантов:

ВариантЧто делает
Оставить обеСохранить удалённую версию как новую соседнюю заметку (например, note (conflict 2026-05-20).md). Самый безопасный вариант по умолчанию.
ОбъединитьОткрыть трёхстороннее слияние. Вы видите локальную, удалённую и базовую версии, затем выбираете или правите вручную.
Оставить локальнуюПобеждает локальная версия. Удалённая отбрасывается.
Оставить удалённуюПобеждает удалённая версия. Локальная отбрасывается.
ПропуститьПока ничего не трогать. Конфликт остаётся в очереди.

Используйте «Объединить» для заметок, в которых нужно соединить смысл обеих правок. Например, на одном устройстве вы добавили абзац в начало, а на другом добавили абзац в конец. Трёхсторонний вид показывает базовую версию (общего предка), локальную и удалённую рядом, и вы выбираете или вручную правите итоговую версию.

Для бинарных вложений и файлов canvas вариант «Объединить» недоступен. Остаются только «Оставить обе», «Оставить локальную», «Оставить удалённую» и «Пропустить».

Далее: Мобильные устройства.