Que es Forgejo
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:
- La empresa se creo sin consultar a la comunidad de contribuidores
- No habia claridad sobre como se tomarian decisiones en adelante
- Existia el riesgo de que decisiones comerciales primaran sobre el bien comun
- El nombre “Gitea” fue registrado como marca comercial por la empresa
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:
- Las decisiones se toman por consenso comunitario
- Ningun actor comercial puede controlar el proyecto
- El codigo fuente es y sera siempre libre
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:
- Gestion de repositorios con visor de codigo
- Issues y Pull Requests con sistema de revision
- Wikis por repositorio
- Projects para gestion de tareas tipo kanban
- Package Registry para npm, Docker, PyPI, Maven y otros
- Releases con adjuntos binarios
- Actions (CI/CD) compatible con la sintaxis de GitHub Actions
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:
- Gobernanza: Forgejo es comunitario, Gitea es de Gitea Ltd
- Forgejo incorpora parches de seguridad mas rapidamente
- Forgejo esta desarrollando funcionalidades unicas como federation
- Ambas plataformas comparten la misma API, por lo que herramientas compatibles con una funcionan con la otra
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