Состоялся первый публичный релиз децентрализованной платформы совместной разработки Radicle

Представлен первый бета-выпуск P2P-платформы Radicle и связанного с ней десктоп-клиента Radicle Upstream. Проект нацелен на создание децентрализованного сервиса совместной разработки и хранения кода, похожего на GitHub и GitLab, но не привязанного к конкретным серверам, не подверженного цензуре и работающего с использованием ресурсов участников P2P-сети, сообщает OpenNet.

Оставить комментарий
Состоялся первый публичный релиз децентрализованной платформы совместной разработки Radicle

Представлен первый бета-выпуск P2P-платформы Radicle и связанного с ней десктоп-клиента Radicle Upstream. Проект нацелен на создание децентрализованного сервиса совместной разработки и хранения кода, похожего на GitHub и GitLab, но не привязанного к конкретным серверам, не подверженного цензуре и работающего с использованием ресурсов участников P2P-сети, сообщает OpenNet.

Код прокси для работы узла написан на языке Rust, а графический клиент на TypeScript, Svelte и Electron. Наработки проекта распространяются под лицензией GPLv3. Сборки подготовлены для Linux (AppImage) и macOS.

Radicle позволяет не зависеть при разработке и распространении открытого кода от централизованных платформ и корпораций, привязка к которым вносит дополнительные риски (единая точка отказа, компания может закрыться или изменить условия работы). Для управления кодом в Radicle используется привычный Git, расширенный средствами определения репозиториев в P2P-сети. Все данные в первую очередь сохраняются локально и всегда доступны на компьютере разработчика, независимо от состояния сетевого подключения. Для защиты информации используется криптография на основе открытых ключей, без применения учётных записей. Список репозиториев участников P2P-сети можно посмотреть на seed-узле проекта.

В основе P2P-сети лежит протокол Radicle Link, основанный на Git и обеспечивающий репликацию данных между участниками. Участники предоставляют доступ к своему коду и коду интересующих их проектов, избыточные копии которых сохраняются локально и реплицируются на системы других заинтересованных разработчиков. В итоге формируется глобальный децентрализованный Git-репозиторий, данные которого реплицированы и продублированы на разных системах участников.

Протокол поддерживает два типа объектов идентификации — участник и проект. Участник связывается с персоной, запустившей узел в P2P-сети (peer), а проект описывает репозиторий, над которым может работать несколько участников. В сети выстраивается социальный граф связи участников и проектов — участники отслеживают интересующие их проекты и других участников. Объекты отслеживаемых участников становятся доступны другим участникам, которые следят за текущим участником.

Разработка ведётся в стиле «базара» — вместо поддержания канонического эталонного представления (master) в Radicle присутствует несколько параллельных веток (upstream) со своими сопровождающими и участниками, которые обмениваются между собой патчами. Вместо привязки к внешнему эталонному репозиторию, в Radicle работа отталкивается от монорепозитория на локальной машине каждого разработчика, в который можно извлекать изменения из репозиториев отслеживаемых участников и передавать свои изменения в репозитории отслеживающих участников.

Концептуально, проект становится совокупностью представлений кода на системах всех участников разработки. На практике организуется иерархия доставки изменений на основе цепочки доверия — для получения изменений в свою локальную копию репозитория разработчик добавляет других разработчиков в качестве источников (remotes), что автоматически формирует подписку на появляющиеся в их репозиториях новые коммиты. Все изменения в P2P-сети заверяются цифровой подписью и могут быть верифицированы другими участниками.

Наиболее простым способом подключения к сети является установка десктоп-приложения Radicle Upstream, которое позволяет создать ключи для идентификации нового участника, разместить свой код и наладить взаимодействие с другими разработчиками. В настоящее время реализация ограничена совместной работой над кодом и системой отслеживания ошибок (issues), но в будущем планируют расширить средства для организации обсуждений и рецензирования изменений, а также реализовать поддержку приватных репозиториев с доступом на основе сквозного шифрования.

Хотите сообщить важную новость? Пишите в Телеграм-бот.

А также подписывайтесь на наш Телеграм-канал.

Горячие события

HRgile.club 2021 Online
23 апреля

HRgile.club 2021 Online

Минск

Читайте также

На серверах GitHub орудуют криптомайнеры. Компания ведёт расследование
На серверах GitHub орудуют криптомайнеры. Компания ведёт расследование
На серверах GitHub орудуют криптомайнеры. Компания ведёт расследование
На GitHub опубликован исходный код TikTok. Компания требует удалить
На GitHub опубликован исходный код TikTok. Компания требует удалить
На GitHub опубликован исходный код TikTok. Компания требует удалить
GitHub хочет восстановить уволенного сотрудника-еврея, виноватый HR ушёл из компании
GitHub хочет восстановить уволенного сотрудника-еврея, виноватый HR ушёл из компании
GitHub хочет восстановить уволенного сотрудника-еврея, виноватый HR ушёл из компании
GitHub уволил сотрудника-еврея, который предупредил о «нацистах» среди штурмующих Капитолий
GitHub уволил сотрудника-еврея, который предупредил о «нацистах» среди штурмующих Капитолий
GitHub уволил сотрудника-еврея, который предупредил о «нацистах» среди штурмующих Капитолий

Обсуждение

Комментариев пока нет.
Спасибо! 

Получать рассылки dev.by про белорусское ИТ

Что-то пошло не так. Попробуйте позже