Спустя более трёх лет с момента формирования ветки 0.11 опубликован новый значительный выпуск Gogs 0.12, системы для организации совместной работы с репозиториями Git, позволяющей на собственном оборудовании или в облачных окружениях развернуть сервис, напоминающий GitHub, Bitbucket и Gitlab. Код проекта написан на языке Go и поставляется под лицензией MIT. Для формирования интерфейса применяется web-фреймворк Macaron. Система имеет достаточно низкие требования к ресурсам и может быть развёрнута на плате Raspberry Pi.
Доступ к репозиторию по протоколам 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, MSSQL и TiDB.
В новом выпуске:
Добавлена поддержка системы хранения Git LFS (Git Large File Storage), позволяющей использовать Git для отслеживания версий больших файлов, содержащих наборы данных, звук, видео и графику. При использовании Git LFS в штатном Git-репозитории большие файлы заменяются на текстовые ссылки, указывающие на контент в отдельном внешнем репозитории, что позволяет избежать повторного копирования файлов при клонировании и извлечении репозитория. При выполнении операций checkout большие файлы не загружаются вместе с остальными данными, а синхронизируются с сервера и хранятся в единственной копии.
Администратору репозитория предоставлена возможность открепления пользователей, имеющих статус наблюдателей.
При передаче raw-файлов реализовано выставление HTTP-заголовка Last-Modified.
Добавлена поддержка подсветки синтаксиса для файлов SAS (.r, .sas, .tex, .yaml).
Добавлена поддержка шаблонов для заполнения заголовка pull-запроса.
При адаптации интерфейса под собственные предпочтения реализована возможность переопределения статических файлов, поставляемых в каталоге «public/».
Добавлен API «GET /admin/teams/:teamid/members» для вывода списка участников группы.
Реализована возможность определения политики устаревания резервных копий для конфигураций на базе Docker.
До версии 1.14 повышены требования к компилятору Go.