¿Qué es Velneo vVersion?
Última actualización
Última actualización
Se trata de un historial de versiones. Es un repositorio de proyectos de soluciones, que sirve para mantener y recuperar versiones, y llevar un log de modificaciones: quién creó y modificó soluciones y proyectos. De esta forma, el usuario tiene una copia de seguridad de los proyectos y puede documentar versiones, recuperarlas en caso de error, etc.
Esta aplicación puede ser personalizada haciendo uso de Tablas y Formularios de extensión, para que contemple mayores funcionalidades de las que incluye, como puede ser el guardado de documentación o iconos. Sin embargo, no es posible modificar el proyecto de datos ya que se trata de una estructura necesaria y debe ser reconocible por el servidor para que realice las tareas necesarias para el repositorio de proyectos. El historial de versiones es un paso más en el control de versiones de tus soluciones, que permitirá en el futuro incluir nuevas funcionalidades.
Para que se produzca el guardado de versiones, debemos tener instalado el componente Velneo vVersion, que podrás descargar desde la página de descargas de nuestra web. Esta aplicación, una vez instalada, faculta al servidor para guardar los proyectos en la base de datos de la aplicación. Cada vez que un desarrollador guarde un proyecto o proyectos, se generará un registro por cada uno de ellos en el que se guardará de forma binaria la última versión del proyecto. De la misma forma que guarda la versión binaria del proyecto, es posible recuperar esta versión y sobreescribir con ella la versión en curso existente en el servidor. De esta forma, podremos revertir los cambios realizados en el momento que deseemos y volver a una versión anterior que nos interese. Velneo vVersion provee además de ciertas herramientas para obtener la última versión de los proyectos de una solución o soluciones, además de herramientas de mantenimiento para eliminar versiones caducas. También, podremos marcar ciertas versiones de tal forma que las tareas de mantenimiento no eliminen tales versiones, con el fin de mantener en el repositorio aquellas que interesen al desarrollador.
En el repositorio de versiones se guarda la versión en curso del proyecto en formato binario en cada ocasión que el programador pulsa la opción de guardar. Además, se guarda información de la Solución y el Proyecto al que pertenece la versión, además de información de log, del usuario que realizó la modificación y el momento en que se guardó.
También se guarda información de la creación para los proyectos: qué usuario la creó y en qué momento. Otra información que se incluye del proyecto es el nombre del proyecto en curso actual (ya que éste puede cambiar a lo largo de la historia del proyecto), la versión, el número de historia, el identificador en disco, el tipo, etc.
En las soluciones también dispondremos de información sobre el usuario y la fecha de creación.
En las fichas de proyectos y soluciones podremos ver las distintas versiones almacenadas, y de igual forma en la ficha del usuario podremos ver el momento de su creación y los proyectos modificados por éste.
Los procesos de mantenimiento que se encargan de eliminar los registros caducos, no eliminarán las versiones guardadas que tengan activado este check que encontrarás en el formulario de la versión. De esta forma, podemos tener siempre disponibles las versiones que nos interesen (versiones finales, release candidates, pruebas, versión en curso, etc.). Este check se activa de forma automática cuando introduces un comentario.
Con esta opción, disponible en el formulario de la versión, sobreescribiremos la versión actual del proyecto en el servidor con la versión que hayamos seleccionado. Bastará volver a conectarnos de nuevo al servidor con Velneo vDevelop y solicitar de nuevo el proyecto para volver a trabajar con esa versión. Será muy útil la información que provee el número de historial y que podemos ver en las propiedades del proyecto para confirmar que estamos trabajando en la versión deseada.
Para recuperar el fichero del proyecto de la versión seleccionada y guardarlo en disco en local usaremos esta opción del formulario de la versión. De esta forma, nuestros proyectos estarán siempre disponibles en cualquier sitio.
Desde la opción de versiones podremos localizar fácilmente las versiones de las soluciones que queramos y poder operar con ellas:
Entre las opciones del menú general se encuentra la opción config. de limpieza. En el formulario que se abre, si pulsamos el botón limpiar ahora, eliminará las versiones guardadas en el repositorio desde el pasado hasta el día que indiquemos. Sin embargo, aquellas versiones que hayamos configurado para Bloquear, no serán eliminadas y permanecerán en el repositorio hasta que se eliminen o bien manualmente o bien cambiando la configuración de bloquear previamente a lanzar de nuevo esta tarea.
Entre las opciones del listado de versiones se encuentra comparar versiones, es decir, mostrar un listado con los cambios existentes entre los objetos de un proyecto y otro. Podemos acceder a esta utilidad desde la toolbar del listado o con el menú contextual, teniendo disponible la posibilidad de comparar dos proyectos seleccionados o un proyecto con la versión anterior del mismo. Indica qué objetos han sido creados, eliminados y modificados. Al comparar se muestra el listado de cambios y haciendo doble clic sobre uno de los objetos se muestra de forma detallada los cambios de dicho objeto.
Compara con la versión anterior en un clic, seleccionando cualquier proyecto y pulsando la opción "Comparar con versión anterior". Se compara el proyecto con la versión anterior del mismo proyecto que existe en el servidor, independientemente de que desarrollador la haya guardado.
Compara con cualquier versión antigua, sin límite de tiempo ni de versiones intermedias entre ambas.
Compara proyectos diferentes, además de versiones distintas de un mismo proyecto. Permite conocer las diferencias entre dos proyectos aunque se trate de proyectos diferentes, incluso de soluciones distintas.
Compara objetos, subobjetos y propiedades de lenguaje Velneo, JavaScript y QML permitiendo conocer detalladamente hasta el más mínimo cambio.
Es rápido y permite comparar grandes proyectos en pocos segundos. Además permite comparar proyectos tanto en local como en cloud, sin apenas diferencia de rendimiento entre ambos entornos. Al tiempo de cálculo simplemente se suma el tiempo de descarga de los proyectos del servidor cloud.
Lo más interesante de esta aplicación es que es totalmente heredable y por tanto podremos personalizarla y extenderla con ayuda de las herramientas de que provee Velneo para la personalización: tablas y formularios de extensión, herencia, herencia inversa y puntos de inserción, etc.
En el caso de extender la aplicación nos interesará conocer la siguiente información:
USERS
Tabla de usuarios, con información de fecha y hora de creación.
SOLUTIONS
Tabla de Soluciones, con información de usuario, fecha y hora de creación.
PROJECTS
Tabla de Proyectos, con información de identificador, nombre, tipo, además de usuario, fecha y hora de creación, identificador, tipo, etc.
VERSIONES
Tabla de versiones, con información de proyecto y solución, nombre y número de historia, usuario fecha y hora de creación, además de contener el binario del proyecto.
PROJECT_TYPES
Tipos de proyecto con icono.
VERSIONS_RESTORE_3P
Restaura la versión seleccionada sobreescribiendo la versión en curso que está en el servidor.
VERSIONS_BIN_FILE
Descarga la versión contenida a disco en local.
APP
Icono de proyecto de aplicación
DAT
Icono de proyecto de datos.
El resto de objetos son de uso interno y no se documentan.
Cada vez que guardamos en disco un proyecto se guardará versión en el historial. Las distintas versiones de las soluciones son guardadas en un campo objeto de una tabla de vVersion, así que es importante, para que éste no haga un consumo exagerado de disco con el paso del tiempo, borrar el historial atrasado.
Para ello, hemos de seguir varios pasos, que explicamos a continuación.
Ejecutando la opción config. de limpieza del menú general configuraremos cuántos días queremos mantener del historial:
En la captura de pantalla anterior se indica que solamente queremos mantener las modificaciones hechas en los últimos 7 días. Es importante tener en cuenta que las versiones que hayamos bloqueado no serán borradas. Por lo tanto, podremos mantener versiones que consideremos clave para que no sean borradas nunca.
En Velneo vAdmin podremos programar una tarea para que haga un borrado del historial atrasado de versiones.