Что это такое?
Экспериментальная система контроля версий на CRDT, где слияния всегда успешны, а конфликты объясняются человеческим языком.
Экспериментальная система контроля версий на Python, которая переосмысливает подход к слияниям через CRDT. Проект решает две проблемы: принципиальную основу для мержей и UX для отображения конфликтов в «бесконфликтном» мире. Автор — Bram Cohen, создатель...
Для разработчиков, уставших от сложных мержей в Git, и команд, работающих над одним кодом параллельно.
Традиционные системы контроля версий (как Git) используют эвристики для слияний, которые ломаются в сложных историях и порождают непонятные конфликты в формате «наша версия против их версии».
Manyana построена на CRDT (Conflict-Free Replicated Data Types) — структурах данных, гарантирующих коммутативность и ассоциативность слияний. Алгоритм всегда производит детерминированный результат, но показывает «конфликты», когда правки находятся слишком близко (например, соседние строки). Вместо бинарного выбора система показывает, что именно сделала каждая сторона: удалила функцию, добавила строку и т.д.
Экспериментальная система контроля версий на Python, которая переосмысливает подход к слияниям через CRDT. Проект решает две проблемы: принципиальную основу для мержей и UX для отображения конфликтов в «бесконфликтном» мире. Автор — Bram Cohen, создатель BitTorrent.
Проект создан Bram Cohen'ом — автором BitTorrent, который теперь исследует, как применить теории распределённых систем к повседневным задачам разработчиков.
Стоит попробовать как концепт будущего контроля версий, но не для продакшена. Это исследовательская работа, показывающая, как могут выглядеть мержи без боли.
Проект выглядит как ранний исследовательский прототип: мало звёзд, нет Issues, но код и README детально проработаны.
Карточка собрана по данным GitHub, README и структуре репозитория. Это не официальная документация проекта.
Экспериментальная система контроля версий на CRDT, где слияния всегда успешны, а конфликты объясняются человеческим языком.
Для любопытных разработчиков, исследователей распределённых систем и тех, кто хочет понять, как улучшить опыт работы с Git.
Если проект подходит под ваш сценарий, можем помочь с установкой, интеграцией, доработкой или аккуратным форком под вашу инфраструктуру.