Доступна платформа совместной разработки Forgejo 12.0

Опубликован выпуск платформы совместной разработки Forgejo 12.0, позволяющей развернуть на своих серверах систему для совместной работы с репозиториями Git, напоминающую по решаемым задачам GitHub, Bitbucket и Gitlab. Forgejo является форком проекта Gitea, который в свою очередь ответвился от платформы Gogs. Отделение Forgejo произошло в 2022 году после попыток коммерциализации Gitea и перехода управления в руки коммерческой компании. Проект Forgejo придерживается принципов независимого управления и подконтрольности сообществу. На использование Forgejo перешёл Git-хостинг Codeberg.org. Код проекта написан на языке Go и распространяется под лицензией GPLv3.

Ключевыми особенностями платформы является низкое потребление ресурсов (может использоваться на плате Raspberry Pi или в дешёвых VPS) и простой процесс установки. Предоставляются типовые возможности работы с проектами, такие как управление задачами, отслеживание проблем (issues), pull-запросы, wiki, средства для координации групп разработчиков, подготовка релизов, автоматизация размещения пакетов в репозиториях, управление правами доступа, сопряжение с платформами непрерывной интеграции, поиск кода, аутентификация через LDAP и OAuth, доступ к репозиторию по протоколам SSH и HTTP/HTTPS, подключение web-хуков для интеграции со Slack, Discord и другими сервисами, поддержка Git-хуков и Git LFS, инструменты для миграции и зеркалирования репозиториев. Отдельно выделяется возможность использования протокола ActivityPub для объединения в федеративную сеть отдельных серверов разработчиков.

Основные изменения:

  • Переработана страница с профилем пользователя. Добавлены дополнительные действия в меню профиля.

    CFD0C5CECEC5D4_1752840035.png

  • Улучшен интерфейс рецензирования pull-запросов на уровне отдельных коммитов (вместо полного списка изменений, охватывающего все коммиты, в данном режиме последовательно рецензируются отдельные коммиты). Для навигации по коммитам при рецензировании добавлены кнопки «вперёд» и «назад». Разрешено использование кнопки завершения рецензирования для отдельных коммитов. На страницах рецензирования оставлен видимым текст пояснения к коммиту.

    CFD0C5CECEC5D4_1752839358.png

  • Добавлена опция для отправки на email уведомлений о сбоях при выполнении работ по расписанию (Forgejo Actions).

  • Оптимизирован процесс проверки конфликтов с открытыми pull-запросами при помещении в целевую ветку новых коммитов. Ранее подобная проверка приводила нагрузке на ввод/вывод, пропорциональной числу открытых pull-запросов из-за применения операции к рабочему дереву. Переход на использование команды «git merge-tree --write-tree» позволил выполнять слияния, не обращаясь к рабочему дереву, что существенно снизило нагрузку в крупных внедрениях.

  • Добавлена возможность использования SSH для задач, ранее завязанных на OpenPGP. Для подписи коммитов после редактирования файлов или приёма изменений, вместо ключа GPG теперь может применяться ключ SSH (подпись формируется в TPM через ssh-agent).

  • По умолчанию добавлен файл robots.txt для информирования ботов о разделах, которые не следует индексировать.

  • Добавлена функция для поддержания форка в состоянии, синхронизированном с основным проектом.

    CFD0C5CECEC5D4_1752839415.png

  • Добавлена поддержка предпросмотра 3D-моделей в формате glTF.

    CFD0C5CECEC5D4_1752839443.png

  • В редакторе комментариев реализована возможность расстановки отступов клавишей Tab.

  • На базе Alpine 3.22 сформирован готовый образ контейнера для запуска Forgejo 12, использующий Git 2.49.1, GnuPG 2.4.7, SQLite 3.49.2 и OpenSSH 10.0.



Источник: http://www.opennet.ru/opennews/art.shtml? num=63601

© OpenNet