Que es Forgejo

Por: Artiko
forgejogitself-hostedopen-source

Que es Forgejo

Forgejo es una plataforma de alojamiento de codigo Git que puedes instalar en tu propio servidor. Es ligera, facil de mantener y completamente open source bajo una licencia que garantiza que el proyecto siempre permanecera en manos de la comunidad.


Historia: de Gogs a Forgejo

Gogs (2014)

Todo comenzo con Gogs, una plataforma Git escrita en Go creada por un desarrollador chino. Su objetivo era ser extremadamente ligera: correr en una Raspberry Pi con 512 MB de RAM. Gogs fue un exito, pero el proyecto dependia de una sola persona, lo cual limitaba su ritmo de desarrollo.

Gitea (2016)

En 2016, la comunidad hizo un fork de Gogs y creo Gitea. El objetivo era un desarrollo mas abierto, con multiples mantenedores. Gitea crecio rapidamente y se convirtio en la alternativa self-hosted mas popular. Durante anos funciono como un proyecto genuinamente comunitario.

El quiebre de 2022

En octubre de 2022, varios mantenedores de Gitea anunciaron la creacion de “Gitea Ltd”, una empresa con fines de lucro registrada en EE.UU. Esto genero controversia en la comunidad por varias razones:

Forgejo (diciembre 2022)

Como respuesta directa, la comunidad creo Forgejo en diciembre de 2022. El nombre es un anagrama de “Forjeo” (del frances “forgé”, forjado). Forgejo nacio bajo el paraguas de Codeberg e.V., una asociacion sin fines de lucro alemana que ya operaba una instancia publica de Gitea en codeberg.org.

Desde el inicio, Forgejo establecio principios claros de gobernanza:


Gobernanza comunitaria

Forgejo esta gobernado por su comunidad a traves de un proceso transparente:

Codeberg e.V. actua como paraguas legal y fiscal. Es una asociacion registrada en Alemania, lo que significa que opera bajo las leyes europeas de organizaciones sin fines de lucro.

El equipo de mantenedores toma decisiones tecnicas. Cualquier persona puede proponer cambios a traves del proceso de RFC (Request for Comments) que esta documentado publicamente.

La licencia GPL-3.0 garantiza que cualquier modificacion al codigo debe ser tambien libre. Nadie puede tomar Forgejo, modificarlo y distribuirlo como software propietario.

Esta estructura contrasta con Gitea Ltd, donde las decisiones estrategicas las toma una empresa privada.


Caracteristicas principales

Ligereza

Forgejo esta escrito en Go, un lenguaje compilado que produce binarios eficientes. Un servidor con 1 CPU y 1 GB de RAM es suficiente para un equipo de 20-50 desarrolladores. Esto lo hace viable en hardware modesto o VPS economicos.

Compatibilidad con el ecosistema Git

Forgejo es compatible con el protocolo Git estandar. Cualquier cliente Git, IDE o herramienta que funcione con GitHub o GitLab funciona con Forgejo sin cambios. Los mismos comandos git clone, git push y git pull aplican.

Interfaz web completa

La interfaz incluye todo lo necesario para el flujo de trabajo de un equipo:

API REST completa

Forgejo expone una API REST compatible con la de Gitea. Esto facilita la integracion con herramientas externas, scripts de automatizacion y migraciones desde otras plataformas.

Federation (en desarrollo)

Forgejo lidera el trabajo de federacion entre instancias Git usando el protocolo ActivityPub. Esto permitira en el futuro que usuarios de diferentes instancias Forgejo interactuen entre si sin necesidad de crear cuentas en cada instancia.


Para que sirve Forgejo

Equipos y empresas con requisitos de privacidad

Cuando el codigo fuente no puede estar en servidores de terceros por razones legales, de cumplimiento normativo (GDPR, HIPAA) o de estrategia empresarial, Forgejo permite mantener un flujo de trabajo similar al de GitHub pero en infraestructura propia.

Organizaciones que necesitan control total

Universidades, agencias gubernamentales, organizaciones de investigacion y ONGs que necesitan garantizar que sus datos no estan sujetos a terminos de servicio de empresas privadas.

Desarrolladores que valoran la soberania digital

Individuos y comunidades que prefieren no depender de plataformas centralizadas. Forgejo puede correr en una Raspberry Pi, en un VPS de 5 dolares al mes o en servidores propios.

Mirror y backup de repositorios

Forgejo puede configurarse para importar y sincronizar automaticamente repositorios desde GitHub, GitLab u otras plataformas, sirviendo como respaldo ante posibles interrupciones o cambios de politica.


Relacion actual con Gitea

Forgejo se mantiene como un fork compatible de Gitea. Comparten aproximadamente el 95% del codigo base. Las diferencias principales son:

En la practica, migrar de Gitea a Forgejo es trivial: el formato de base de datos y la configuracion son identicos.


Siguiente: Capitulo 2 - Comparativa: Forgejo vs GitHub vs GitLab vs Gitea