The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

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

02.10.2025 11:26

Представлен выпуск P2P-платформы Radicle 1.5, нацеленной на создание децентрализованного сервиса совместной разработки и хранения кода, похожего на GitHub и GitLab, но не привязанного к конкретным серверам, не подверженного цензуре и работающего с использованием ресурсов участников P2P-сети. Платформа поддерживает типовые элементы социального взаимодействия разработчиков, такие как issue, патчи и рецензии на код. Наработки проекта написаны на языке Rust и распространяются под лицензиями Apache 2.0 и MIT. Сборки подготовлены для Linux и macOS. Дополнительно развиваются десктоп-клиент, web-интерфейс и консольный интерфейс.

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

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

Для определения соседних узлов в P2P-сети применяется протокол Gossip, а для репликации данных между узлами протокол Heartwood, основанный на Git. Так как протокол основан на Git, платформу легко интегрировать с существующими инструментами для разработки на Git. Для идентификации узлов и верификации репозиториев используется криптография на основе открытых ключей, без применения учётных записей. Аутентификация и авторизация осуществляется на основе открытых ключей без централизованных удостоверяющих серверов.

Каждый репозиторий в P2P-сети имеет свой уникальный идентификатор и самосертифицирован (self-certifying), т.е. все действия в репозитории, такие как добавление коммитов и оставление комментариев к issue, заверяются владельцем цифровой подписью, позволяющей убедиться в корректности данных на других узлах без использования централизованных удостоверяющих центров. Для получения доступа к репозиторию достаточно, чтобы в online находился хотя бы один узел, на котором имеется его реплицированная копия.

Узлы в P2P-сети могут подписываться на определённые репозитории и получать обновления. Возможно создание приватных репозиториев, доступных только определённым узлам. Для управления и владения репозиторием используется концепция "делегатов" (delegates). Делегатом может быть как отдельный пользователь так и бот или группа, привязанные к специальному идентификатору. Делегаты могут принимать в репозиторий патчи, закрывать issue и задавать права доступа к репозиторию. К каждому репозиторию может быть привязано несколько делегатов.

Radicle-репозитории хранятся на системах пользователей в виде обычных git-репозиториев, в которых присутствуют дополнительные пространства имён для хранения данных пиров и форков, с которыми осуществляется текущая работа. Обсуждения, предлагаемые патчи и компоненты для организации рецензирования тоже сохраняются в git-репозитории в виде совместных объектов (COB - Collaborative Objects) и реплицируются между пирами.

В новом выпуске:

  • Улучшена поддержка bare-репозиториев, не содержащих рабочего каталога с копией файлов проекта, а хранящих только историю изменений и метаданные, такие как ветки и теги. В команду "rad clone" добавлена опция "--bare", позволяющая клонировать репозиторий в представление без рабочего дерева. В утилите "git-remote-rad" улучшена работа с bare-репозиториями при использовании команд "git push" и "git fetch" при обращении к внешнему rad-серверу.
  • Добавлена настройка "patch.branch", которую можно использовать в утилите git-remote-rad ("git-remote-rad -o patch.branch[=<name>]") при добавлении патча для автоматического создания ветки в upstream-репозитории, без необходимости использования команды "rad patch checkout".
  • Улучшен вывод команды "rad patch show", которая теперь показывает исходную версию патча, выводимую ранее только при указании флага "--verbose". Все ревизии теперь выводится в единой хронологии без разделения на изменений от оригинального автора и других участников.
  • Добавлена возможность вывода логов в структурированном представлении, включаемом через опции "--log-logger structured" и "--log-format json".


  1. Главная ссылка к новости (https://radicle.xyz/2025/09/30...)
  2. OpenNews: Доступна платформа совместной разработки Forgejo 12.0
  3. OpenNews: Доступна децентрализованная система отслеживания ошибок git-bug 0.9
  4. OpenNews: Выпуск глобальной децентрализованной файловой системы IPFS 0.9
  5. OpenNews: Началась разработка GitPub, протокола для децентрализованных Git-сервисов
  6. OpenNews: Выпуск zeronet-conservancy 0.7.8, платформы для децентрализованных сайтов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63982-radicle
Ключевые слова: radicle, git, p2p
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (51) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Stanislavvv (?), 12:05, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Не очень понимаю, как мне сделать там нечто, похожее на CI/CD. Как-то я уже привык к тому, что сделал мерж в мастер — всё автомагически начало собираться и собранное запустилось где надо. Не у меня на компе, естественно, иначе бы через git hook можно было.
     
     
  • 2.2, Аноним (2), 12:11, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://radicle.xyz/2025/07/23/using-radicle-ci-for-development
     
     
  • 3.3, Stanislavvv (?), 12:19, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Благодарю, оно таки есть.
     

  • 1.4, Аноним12345 (?), 12:22, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    О, это интересно.
    Каждый участник хранит и реплицирует данные (репозитории) тех проектов, которые ему интересны.
    Проекты реплицируются на другие узлы.
    Разработчики могут не просто предлагать изменения в виде патчей, но и проводить на их основе полноценные ревью: оставлять комментарии к конкретным строкам кода, обсуждать изменения, одобрять или запрашивать доработки.
    Radicle предлагает решение для проектов, которые подвержены риску политической или корпоративной цензуры.

     
     
  • 2.26, Аноним (26), 14:36, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Кто ещё пользуется этой штукой кроме самих авторов?
     
  • 2.30, Аноним (26), 15:05, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вы видели исходники десктопного клиента?
    Зачем он требует npm?
    В исходниках какие-то свелте, тайпскрипты...
    Неужто нельзя было нормальный фреймворк взять, если уж делать под десктоп?
     
     
  • 3.34, Аноним (26), 15:16, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Оказывается это webview через фреймворк tauri.
     
  • 3.42, Аноним (42), 16:07, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Неужто нельзя было нормальный фреймворк взять, если уж делать под десктоп?

    Сделай, заодно узнаешь

     
     
  • 4.50, Аноним (26), 17:59, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Узнаю что?
    Что для раста нет других ui-фреймворков?
     
     
  • 5.51, Аноним (51), 18:27, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.5, Аноним (5), 12:23, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Bitmessage тоже был "децентрализованный сервис для тех, кому не нравится плясать под дудку Gmail, их хозяев, и хозяев их хозяев". Но оказалось, что у самого автора pybitmessage (вот сюрприз-то, совершенно нельзя было догадаться!) есть хозяева, а любым хозяевам невозможно отказывать...
     
     
  • 2.7, Аноним (7), 12:50, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не закончил, что там дальше-то?
     
     
  • 3.11, Аноним (11), 13:10, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да
     
  • 3.14, Аноним (14), 13:17, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Муха села на варенье,
    Вот и все стихотворенье.
     
  • 3.15, Аноним (15), 13:25, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Автор, видите-ли, не знал, что eval(data[""] + "." + data[""].title()) делать нельзя.
     
     
  • 4.19, Аноним (7), 13:37, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Может и не знал. Питонисты они такие.
     
     
  • 5.43, Аноним (43), 16:53, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.6, Аноним (6), 12:45, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >Платформа поддерживает типовые элементы социального взаимодействия разработчиков, такие как issue, патчи и рецензии на код.

    Забавно что иссуе так и не нашло киррилизации, на ряду с патчем и рецензией.

     
     
  • 2.18, Аноним (15), 13:31, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    /ˈɪs.juː/
     
     
  • 3.37, Аноним (6), 15:31, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >/ˈɪs.juː/

    Эти ваши бранскрипции это секретный язык, который нигде не написан как произвониться на рабоном языке. Все кото я встречал передавали произношение устно.
    Зачем нужен английский как межуднародный, если есть транскрипция, которую знают во всех странах, вот вопрос. Или все же не знают?

     
  • 2.22, 12yoexpert (ok), 14:05, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    на каком ряду? ты сам написал "патч" и "рецензия" кириллицей, ничего?
     
     
  • 3.24, Аноним (24), 14:20, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно он хотел: заявка, заплатка и заключение. :)
     
     
  • 4.25, Аноним (24), 14:22, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    или проблема, заплатка и заключение. :)
     
  • 4.46, Соль земли2 (?), 17:45, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Заштопка, примочка, затычка, заклепка, поправка, исправление, починка... таблэтка!
     
  • 3.38, Аноним (6), 15:33, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В тексте новости два раза встречается issue литаницей.
     
  • 2.31, Мемоним (?), 15:06, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.8, Аноним (6), 12:54, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Наработки проекта написаны на языке Rust и распространяются под лицензиями Apache 2.0 и MIT.

    Жаль что ЯП выбран Раст а не Си или С++ хотя бы.

     
     
  • 2.12, Аноним (14), 13:17, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Тоже верно. Можно было бы отправлять специально сформированные пакеты узлам, вызывать там переполнение буфера и выполнять команды из-под рута.
     
  • 2.13, Аноним (13), 13:17, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Наработки проекта написаны на языке Rust и распространяются под лицензиями Apache 2.0 и MIT.
    > Жаль что ЯП выбран Раст а не Си или С++ хотя бы.

    наработки децентрализованного проекта хранятся в централизованном репозитории. Или я чего-то, как всегда, не понимаю?

     
     
  • 3.17, Аноним (17), 13:30, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >Или я чего-то, как всегда, не понимаю?

    Да.

     
  • 3.28, Аноним (28), 14:55, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    не, начуолько я понял, централизованная реп это только зеркало децентрплизованной
     
  • 3.39, Аноним (6), 15:37, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Получается, что автор(ы) сабжа это один источник. Получать ПО из одного источника получается удобнее. Парадокс? Не думаю.
     
  • 2.23, Аноним (-), 14:14, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.16, 12yoexpert (ok), 13:29, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    страны местонахождения разработчиков в студию
     
     
  • 2.20, Аноним (20), 13:47, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    домен регистрирован на адрес в г. Рейкьявик, Исландия
     
     
  • 3.21, 12yoexpert (ok), 14:03, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    вот эту бы инфу к каждой новости об очередной поделке, авторы которой шифруются
     
     
  • 4.29, Аноним (29), 15:00, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ну введут закон - все переедут на кайманы, либо где правительство не имеет цифровой возможности.
     
  • 4.35, Мемоним (?), 15:16, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > January, 2018

    Berlin-based Monadic GmbH is founded by Eleftherios Diakomichalis and Alexis Sellier a.k.a cloudhead to pursue the vision of a sovereign developer stack.
    Не шифруются.

     

  • 1.27, Аноним (27), 14:54, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А зачем она нужна?
    У автора от гитхаба уже попа болит?
     
  • 1.32, Аноним (32), 15:07, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ну что хейтеры Rust, утёрлись! Говорите ничего полезного и перспективного на Rust не пишут?

    Плюсовики, пока не поздно, пока ещё с работы не выгнали, учите Rust в свободное время!

     
     
  • 2.33, Аноним (33), 15:13, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А где полезное, шиз?
     
  • 2.40, Аноним (6), 15:40, 02/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.36, Мемоним (?), 15:26, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хороший проект, нужный. Когда LF окончательно ляжет под Бигтех, цифровому сопротивлению будет куда переехать.
     
     
  • 2.44, 12yoexpert (ok), 16:53, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    linux format? line feed? linux foundation?
     
     
  • 3.48, Мемоним (?), 17:51, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > linux format? line feed? linux foundation?

    Конечно line feed. Ведь linux format уже лег ☦️

     

  • 1.41, Аноним12345 (?), 16:04, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    да,питонисты они все такие
     
  • 1.45, Аноним (45), 17:41, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Даже не знаю, плакать мне или смеяться Тут часто бывают причитания, мол, всё пр... большой текст свёрнут, показать
     
     
  • 2.47, 12yoexpert (ok), 17:46, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > надо найти жену и заделать ей троих

    свои гомофобные скрепы можешь натянуть на свою бутылку

    как только программисты выходят замуж или женятся, у них сразу кардинально сокращается время на это самое программирование и самообразование вне зависимости от желания. дети это вообще забей

     
  • 2.49, Соль земли2 (?), 17:57, 02/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Профессия требует слишком большой самоотдачи, чтобы ещё и семью заводить. На всё в жизни энергии не хватит. Кто-то пусть кодит, а кто-то семьи создаёт.
     

  • 1.52, Аноним (-), 18:32, 02/10/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.53, Аноним (53), 18:34, 02/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У git и нативный транспортный протокол и http и ssh, хоть
    где свою репу держи и чужие фетчи. Нет, надо сделать еще
    одну прослойку, шлепнуть марку децентрализованно и конечно написать на раст.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру