Через два з половиною роки з моменту формування гілки 0.12 опубліковано новий значний випуск Gogs 0.13 системи для організації спільної роботи з репозиторіями Git, що дозволяє на власному устаткуванні або в хмарних оточеннях розгорнути сервіс, що нагадує GitHub, Bitbucket і Gitlab. Код проекту написаний мовою Go та постачається під ліцензією MIT. Для формування інтерфейсу застосовується web-фреймворк Macaron. Система має досить низькі вимоги до ресурсів та може бути розгорнута на платі Raspberry Pi.
Основні можливості Gogs:
- Відображення активності за шкалою часу;
- Доступ до репозиторію за протоколами SSH та HTTP/HTTPS;
- Аутентифікація через SMTP, LDAP та Reverse proxy;
- Вбудовані засоби управління обліковими записами, репозиторіями та організаціями/командами;
- Інтерфейс для додавання та видалення розробників, які мають доступ до додавання даних до репозиторій;
- Система web-хуків для інтеграції обробників від сторонніх сервісів, таких як Slack, Discord та Dingtalk;
- Підтримка підключення Git-хуків та Git LFS;
- Наявність інтерфейсів для прийому повідомлень про помилки (issues), обробки pull-запитів та Wiki для підготовки документації;
- Засоби для міграції та дзеркалювання репозиторіїв та wiki з інших систем;
- Web-інтерфейс для редагування коду та wiki;
- Завантаження аватарів через Gravatar та сторонні сервіси;
- Сервіс відправлення повідомлень електронною поштою;
- Панель Адміністратора;
- Багатомовний інтерфейс, перекладений 30 мовами;
- Можливість налаштування інтерфейсу через систему HTML-шаблонів;
- Підтримка зберігання параметрів у MySQL, PostgreSQL, SQLite3 та TiDB.
У новому випуску:
- Надано можливість використання персонального токена доступу у полі з паролем.
- На сторінках створення та перенесення репозиторію з'явилася опція для виключення зі списку (unlisted), що залишає репозиторій публічним, але приховує його у списку користувачів без прямого доступу в інтерфейс Gogs.
- Додано нові налаштування "[git.timeout] DIFF" (таймаут для git diff), "[server] SSH_SERVER_MACS" (список дозволених MAC-адрес), "[repository] DEFAULT_BRANCH" (назва гілки за умовчанням для нових репозиторіїв), "[ server] SSH_SERVER_ALGORITHMS» (список допустимих алгоритмів для обміну ключами).
- Надано можливість вказівки власної схеми зберігання для PostgreSQL.
- Додано підтримку малювання Mermaid-діаграм у Markdown.
- Назва гілки за промовчанням змінена з master на main.
- Оголошено застарілим бекендом зберігання MSSQL.
- До версії 1.18 підвищено вимоги до компілятора Go.
- Для зберігання токенів доступу тепер використовуються хеші SHA256 замість зберігання у відкритому вигляді.
Джерело: opennet.ru