KEPLIN Docs

Historial y merge

Leer el historial de una app, deshacer un cambio, restablecer un estado antiguo, y traer elementos de una versión a otra con el merge selectivo.

Todo lo que se guarda en una app queda registrado. El historial responde a tres preguntas — qué cambió, quién lo cambió y cuándo — y da dos formas de volver atrás. El merge selectivo hace lo contrario: lleva cambios de una versión a otra, elemento a elemento, sin mezclar lo que no se quiere.

Abrir el historial

  1. Abre la app y haz clic en el botón de versiones, en la cabecera de la barra de la app.
  2. En la fila de la versión que quieres inspeccionar, haz clic en el icono del reloj — Ver el historial de esta versión.
  3. Se abre una pestaña Historial de … en el espacio de trabajo.

El panel Historial de una versión, con un guardado por fila
El panel Historial de una versión, con un guardado por fila

Cada fila es un guardado, y se lee de izquierda a derecha:

Elemento Qué es
El trazo de color La rama a la que pertenece el guardado. Versiones distintas tienen colores distintos, y el dibujo muestra dónde se separaron.
Las etiquetas (main, 1.1) Las versiones en las que está ese guardado. Un guardado anterior a la separación aparece en las dos.
La frase Qué se guardó — «Tema de la app modificado», «Pantalla "Contas" guardada», «Script "importar" creado».
El número Cuántos archivos tocó el guardado.
El código corto El identificador del guardado.
El nombre Quién guardó.
La fecha Cuándo.

Haz clic en una fila para abrirla y ver qué se tocó: la lista de los elementos, cada uno con la marca de lo que le pasó — creado, modificado, borrado o renombrado. Un guardado sin detalle registrado dice «Sin archivos registrados en este guardado.»

Nota

Los guardados anteriores a la creación de una versión pertenecen a todas las versiones que descienden de ella. Cuando son muchos seguidos, el panel los agrupa en una fila — «N cambios comunes a todas las versiones — expandir» — para que el dibujo no quede ilegible. Haz clic para abrirlos.

Ver el historial de un elemento

El panel del historial también se abre enfocado en un solo elemento, cuando quieres la historia de una pantalla y no la de la app entera. Ahí, la lista muestra solo los guardados que la tocaron, y una app sin cambios en ese elemento dice «Este elemento no tiene cambios registrados.»

Deshacer: revertir un cambio

Revertir crea un guardado nuevo que anula uno antiguo. Sirve para quitar un cambio de en medio sin tirar lo que vino después de él.

  1. En el historial, pasa el ratón por la fila del guardado.
  2. Haz clic en el icono de tres puntos a la derecha — Acciones del guardado.
  3. Elige Revertir este cambio.
  4. Confirma en «¿Revertir este cambio?» — «Crea un guardado NUEVO que deshace "…". La historia no se reescribe — deshacer el deshacer es un paso más hacia adelante.»
  5. La confirmación dice «Cambio revertido — guardado nuevo en el historial.»

El menú de acciones de un guardado, con Revertir este cambio y Restablecer la app a este estado
El menú de acciones de un guardado, con Revertir este cambio y Restablecer la app a este estado

Volver atrás: restablecer un estado

Restablecer es más radical: escribe el contenido de un momento antiguo encima del diseño actual.

  1. En el mismo menú Acciones del guardado, elige Restablecer la app a este estado.
  2. Confirma en «¿Restablecer la app a este estado?» — «Escribe el contenido de … encima del diseño actual y guarda OTRA vez. Todo lo que vino después queda deshecho — pero sigue en el historial.»
  3. La confirmación dice «Estado restablecido — guardado nuevo en el historial.» Si la app ya estaba exactamente en ese estado, la plataforma no guarda nada y avisa: «La app ya está exactamente en ese estado — nada que guardar.»

Consejo

La regla vale para las dos acciones: la historia nunca se reescribe. Ni revertir ni restablecer borran guardados — ambas añaden uno. Por eso siempre se puede volver atrás otra vez: deshacer el deshacer es un paso más hacia adelante.

Merge selectivo: traer de otra versión

Cuando el trabajo de una versión está listo para entrar en otra, el merge selectivo trae los elementos que elijas — y solo esos.

  1. Abre el menú Versiones en la cabecera de la app.
  2. Haz clic en Merge selectivo…. (La opción solo se activa a partir de dos versiones; con una sola no hay de dónde traer.)
  3. Se abre el modal Merge selectivo, con la explicación: «Traer elementos de otra versión a la versión "main". El merge trae y actualiza — nunca borra; las referencias se validan antes de guardar.»
  4. Elige la Versión de origen en el selector de arriba.
  5. La lista se llena con los elementos de esa versión, agrupados por categoría.

El modal Merge selectivo, con la versión de origen y los elementos agrupados por categoría
El modal Merge selectivo, con la versión de origen y los elementos agrupados por categoría

Las categorías son las piezas de la app: Pantallas, Layouts, Widgets, Pantallas de sistema, Navegación, Modelo, Enums, APIs, Datasources, Scripts, Programaciones, Triggers, Informes, Procesos, Permisos, Traducciones, Tema, Assets, Almacenamientos, Canales y Ajustes de la app.

  1. Marca lo que quieres traer. El contador de arriba lo acompaña — «3 seleccionado(s)».
  2. Usa la caja Buscar elementos… para filtrar cuando la lista sea larga.

La búsqueda del merge filtrando los elementos de una categoría
La búsqueda del merge filtrando los elementos de una categoría

  1. Haz clic en Traer 3 elemento(s).
  2. La confirmación dice «Merge de la versión 1.1 completado — 3 elemento(s) traídos.», y el espacio de trabajo recarga ya con lo que vino.

Lo que el merge hace — y lo que nunca hace

Hace Nunca hace
Trae elementos que no existían en la versión de destino Borra lo que existe en la versión de destino y no fue seleccionado
Actualiza los que ya existían, con la versión del origen Toca los datos — el merge es del diseño, no de las tablas
Valida las referencias antes de guardar Mezcla versiones automáticamente: nada se mueve sin que alguien lo marque

Esa última línea es la red de seguridad. Si lo que seleccionaste apunta a algo que no existe en el destino — una pantalla que usa un widget que no fue traído — el merge no guarda y explica: «El merge no se guardó — el árbol resultante tenía referencias rotas:», con la lista de los problemas. Trae también lo que falta y repite.

Atención

El merge no borra. Si en la versión de origen borraste una pantalla, el merge no la borra en el destino — solo trae y actualiza. Borrar sigue siendo un acto explícito, hecho en la versión donde debe borrarse.

Preguntas frecuentes

  • ¿El merge trae los datos? No. Trae el diseño. Las tablas, los registros y los archivos de cada versión son suyos.
  • ¿Puedo hacer merge en los dos sentidos? Sí. El merge es siempre «traer a la versión en la que estoy» — cambia de versión y haz el camino inverso.
  • ¿Revertir un cambio de otra persona? Puedes: las acciones del historial valen para cualquier guardado de la versión en la que estás, sea quien sea el autor. Su nombre queda en el historial, y el tuyo en el guardado que lo deshace.
  • ¿Por qué la opción Merge selectivo está gris? La app solo tiene una versión. Crea otra y la opción se enciende.