Ir al contenido

Git · ChangeSet

Blyck ofrece el control de versiones en dos capas. Git para los archivos y ChangeSet para seguir incluso lo que Git no ve (BD · SSH · paquetes), de modo que, cambie lo que cambie, puedas comprobarlo y revertirlo.

Abre la ventana del historial de cambios con Ctrl+Shift+H, o también con clic en el chip 📦 ChangeSet de la parte inferior del Chat con IA: se abre la misma ventana.


Paquete MinGit — no necesitas instalar git

Sección titulada «Paquete MinGit — no necesitas instalar git»

Las builds de Windows incluyen MinGit. Si hay git instalado en el sistema, se usa ese de forma prioritaria; si no, se hace fallback automático al MinGit incluido. Incluso en un PC en el que nunca se ha instalado git, los commits·push·ChangeSet funcionan todos.


ChangeSet — un historial único de todos los cambios

Sección titulada «ChangeSet — un historial único de todos los cambios»

Los cambios que ocurren en el proyecto se registran en un solo lugar, sin distinción de tipo. Sin procedimientos de bloqueo ni checkout, entran automáticamente en el momento en que se produce el cambio. Las operaciones de solo lectura (SELECT · file_read · ls) no se registran.

TipoContenido registrado
ArchivoContenido antes/después, hora, origen (👤 persona / ✨ IA)
DB DDLSQL original, SQL inverso autogenerado, riesgo
DB DMLSQL original, número de filas afectadas, filas de respaldo previas para reversión
Ejecución SSHComando ejecutado, servidor, parte de la salida, riesgo
PaquetesNombre del paquete, runtime

Abrir la ventana: Ctrl+Shift+H o el chip 📦 de la parte inferior del Chat con IA. Con el toggle [Todos los cambios | Esta tarea] alternas entre el historial completo y el ámbito de la tarea del chat actual.


La ventana de ChangeSet se compone de tres pestañas.

Muestra juntos los archivos sin commit (basado en git status) y los cambios de BD·SSH·paquetes (basado en el historial). Puedes seleccionar un elemento y ejecutar la reversión.

  • Archivos sin commit → git checkout (descartar modificación) o eliminar el archivo nuevo
  • Cambios de BD → ejecutar el SQL inverso autogenerado
  • Cambios de SSH → si se puede inferir el comando inverso, se propone automáticamente

Muestra la lista de commits basándose en git log. Al hacer clic en un elemento ves el diff git show de ese commit, y con el botón [Revertir este commit] ejecutas git revert (conserva el historial, no es sobrescritura forzada).

Los cambios de archivos se exportan con git push, y los cambios de BD como scripts de migración SQL.

  • Verificación (verify) — comprueba UPDATE/DELETE sin WHERE, DDL peligrosos (DROP · añadir NOT NULL), tests ausentes para funciones nuevas, etc.
  • Exportación (export) — exporta como scripts de migración SQL, un conjunto de comandos git para el PR, o JSON. Úsalo para organizar el trabajo hecho en la BD de desarrollo de cara a aplicarlo en producción.

Puedes seleccionar cualquier elemento del historial y revertirlo.

TipoMétodo de reversión
ArchivoRestaura el contenido previo al cambio
DDLEjecuta el SQL inverso autogenerado (CREATEDROP, ADD COLUMNDROP COLUMN)
DMLRestaura desde las filas respaldadas justo antes de ejecutar (respaldo de capa 1/capa 2, ver más abajo)
SSHSi se puede inferir el comando inverso, se propone automáticamente (mkdirrmdir); si no, guía manual

Respaldo automático de DML (capa 1 / capa 2)

Sección titulada «Respaldo automático de DML (capa 1 / capa 2)»

Antes de que la IA ejecute un DML, crea automáticamente un respaldo.

  • Capa 1 — cuando es tabla única·WHERE parseable·PK·≤1000 filas: guarda el JSON de las filas previas al cambio en dml_backup de la BD de historial (blyck-history.db). Al revertir, restaura al instante.
  • Capa 2 — cuando es masivo·consulta compleja·sin PK: crea una tabla de respaldo (blyck_bak_…) dentro de la BD destino para conservarlas. Una vez completada la reversión, la tabla de respaldo se elimina automáticamente.
  • Vista previa de la operación inversa antes de ejecutar + modal de confirmación — DROP / DELETE con advertencia roja
  • Si reviertes un elemento intermedio, advertencia “se sobrescribirán los N cambios posteriores”
  • Si el valor actual difiere del valor registrado (volvió a cambiar en otro lugar), se vuelve a confirmar si forzar
  • La propia reversión también se registra como un nuevo elemento del historial — es posible revertir la reversión

El historial se guarda en %APPDATA%\Blyck\blyck-history.db.

PolíticaCriterio
Máximo de retención por objetivoLos 40 elementos más recientes
Ciclo de limpieza automáticaEliminar elementos con más de 14 días
Límite de tamaño de la BD2 GB
Límite de tamaño de archivo individualLos archivos de más de 1 MB se excluyen del registro

Ejecuta las operaciones de Git desde la pestaña Historial de commits de la ventana de ChangeSet o desde la paleta de comandos (Ctrl+Shift+P).

OperaciónDescripción
Punto de controlCrea un punto de guardado automático intermedio como un commit con marca de tiempo. Puedes volver a él en cualquier momento durante un experimento.
Commit por unidad de tareaReúne en un único commit los cambios de archivos·BD·SSH producidos en el chat (tarea) actual. Con el botón ✨ genera automáticamente un mensaje de commit con IA.
Commit selectivo / commit completoElige archivos para hacer commit o haz commit de todo de una vez.
diffCompara según el criterio que quieras: árbol de trabajo, un commit concreto, entre dos commits, el ámbito de una tarea concreta, etc.
discardDescarta los cambios del árbol de trabajo.
logConsulta el historial de commits.
pushEnvía la rama actual al repositorio remoto.

Inicia sesión con el device flow de OAuth de GitHub. Basta con introducir un código una vez en el navegador para completarlo, y el token se conserva cifrado en el almacén de credenciales del SO (safeStorage).

  1. Paleta de comandos (Ctrl+Shift+P) → “Iniciar sesión en GitHub” o el botón GitHub en la parte superior de la ventana de ChangeSet
  2. Cuando se abra el navegador, introduce el código mostrado para autenticarte
  3. Una vez completado, la autenticación de push/pull se gestiona automáticamente

Operaciones disponibles tras la integración

Sección titulada «Operaciones disponibles tras la integración»
OperaciónDescripción
PublishCrea el proyecto local como un repositorio nuevo en GitHub y lo sube
CloneClona un repositorio de GitHub a una carpeta local
LinkVincula un repositorio local existente con un repositorio de GitHub

Tras la integración, la autenticación de push/pull se gestiona automáticamente. Como el token se guarda cifrado en el almacén de credenciales del SO, no necesitas iniciar sesión cada vez.


  • Chat con IA — los cambios que crea la IA también se registran automáticamente en ChangeSet
  • Editor de código — registro en el historial al guardar archivos, también se siguen las ediciones con IA en línea
  • Cliente de BD — generación automática de SQL inverso·respaldo al ejecutar DDL/DML
  • Terminal · SSH · SFTP — registro del historial de comandos SSH ejecutados

P. No tengo git instalado, ¿puedo hacer commit? Las builds de Windows incluyen MinGit, así que puedes hacer commit·push sin instalación aparte.

P. Un archivo que modificó la IA no aparece en ChangeSet. Los archivos que la IA modifica con sus Edit/Write integrados no pasan por la ruta file_write de Blyck, así que no se registran directamente en el historial. Sin embargo, como git reconoce el cambio, sí aparecen en la lista de archivos sin commit de la pestaña Cambios.

P. Ejecuté un DML por error, ¿puedo revertirlo? Sí. Antes de ejecutar el DML se crea un respaldo automático (capa 1: BD de historial, capa 2: tabla de respaldo en la BD destino), así que puedes restaurar con Ctrl+Shift+H → el elemento correspondiente → Revertir. Los UPDATE/DELETE sin WHERE también se restauran.

P. ¿Qué hago si hice una reversión por error? La propia reversión también se registra como un nuevo elemento del historial. Si vuelves a Ctrl+Shift+H y reviertes ese elemento de “reversión”, se restaura el estado original.

P. Quiero deshacer un commit concreto del historial de commits. En la pestaña Historial de commits, clic en el commit correspondiente → al pulsar el botón [Revertir este commit] se ejecuta git revert. Se conserva el historial y se añade un nuevo commit de revert.

P. ¿Por qué a veces no se puede revertir un comando SSH? Solo se propone automáticamente cuando el comando inverso se puede inferir de forma automática (mkdirrmdir, etc.). Los comandos con efectos secundarios hay que tratarlos manualmente.

P. Mi inicio de sesión con device flow de GitHub ha caducado. Basta con volver a ejecutar “Iniciar sesión en GitHub” en la paleta de comandos para reautenticarte. Después, push/pull vuelven a gestionarse automáticamente.

P. El archivo de la BD de historial se ha vuelto demasiado grande. %APPDATA%\Blyck\blyck-history.db se gestiona con un límite de 2 GB y una política de limpieza automática a los 14 días. Los archivos grandes (más de 1 MB) se excluyen del registro. Para limpiar de inmediato, reinicia la app y se ejecutará la rutina de limpieza.