Skip to content
← Todos los artículos

Cómo gestionar las traducciones de tu app con Git

19 de julio de 2026 · 2 min de lectura · MovaBase Team
traduccionesgiti18n

Lanzar una app en un solo idioma es sencillo. Lanzarla en diez es donde empiezan los problemas: los archivos de traducción se desincronizan, las claves se renombran en un idioma pero no en los demás, y nadie sabe qué textos están realmente listos para publicar.

La solución no es una hoja de cálculo más grande. Es tratar las traducciones como código, porque es lo que son: viven en tu repositorio, cambian con cada funcionalidad y merecen el mismo flujo de revisión.

Por qué las traducciones pertenecen a tu repositorio

Cuando los archivos de traducción viven en Git, cada cambio queda registrado. Puedes ver quién renombró una clave, cuándo se añadió un idioma y qué commit introdujo una traducción que falta. Las ramas te dan espacios de trabajo aislados, de modo que una actualización de alemán a medias nunca bloquea un hotfix urgente.

Compáralo con las alternativas habituales: hojas de cálculo enviadas por email sin historial, o una herramienta de traducción que guarda tus textos en su propia base de datos sin un camino claro de vuelta a tu repositorio.

Los archivos que ya tienes

La mayoría de stacks ya guardan las traducciones como archivos de texto plano:

  • JSON para apps web, un archivo por idioma como en.json y es.json
  • .strings o .xcstrings para iOS y macOS
  • strings.xml para Android
  • archivos .po para proyectos basados en gettext

Un archivo JSON típico tiene este aspecto:

{
  "checkout.title": "Checkout",
  "checkout.pay": "Pay now",
  "checkout.empty_cart": "Your cart is empty"
}

Estos archivos muestran diferencias limpias, se revisan bien en pull requests y funcionan con cualquier pipeline de CI que ya tengas.

Un flujo de trabajo que escala

El flujo que funciona para la mayoría de equipos es este: los desarrolladores añaden claves en el idioma fuente, la herramienta de traducción se sincroniza con el repositorio, los traductores completan el resto y los idiomas terminados vuelven como commits. Sin exportaciones, sin copiar y pegar, sin archivos "final_v3_REVISADO".

Si un cambio de traducción no puede revisarse en un pull request, tarde o temprano romperá algo en producción.

Este es exactamente el flujo para el que está construido MovaBase. Conecta tu repositorio y tus archivos JSON, .strings y XML de Android se mantienen sincronizados en ambas direcciones: los traductores trabajan en un editor pensado para ellos mientras los desarrolladores mantienen todo en Git. Puedes probarlo con tu propio repositorio en app.movabase.com.

Empieza poco a poco: mueve un archivo de idioma a tu repositorio, conecta la sincronización y deja que el historial de pull requests hable por sí solo.