AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

¡Nueva funcionalidad de WINDEV 2024!
Ayuda / Tutorial WINDEV / Tutorial - Un SCM para WINDEV
  • Compartir código fuente mediante el SCM
  • Presentación
  • Principio del SCM
  • Repositorio
  • Importar un proyecto existente en el SCM
  • Abrir un proyecto desde el SCM por primera vez
  • Manipular el proyecto mediante el SCM
  • Cambiar una característica del proyecto
  • Modificar una ventana del proyecto
  • Reintegrar el elemento extraído
  • Información adicional
  • Conclusión

Compartir código fuente mediante el SCM
Abordaremos los siguientes temas:
  • ¿Qué es el Administrador de Código Fuente?
  • Características del repositorio.
  • Ejemplo práctico: uso del Administrador de Código Fuente
    • Agregar un proyecto al Administrador de Código Fuente.
    • Editar elementos.
Durée de la leçon 30 min
Presentación
El desarrollo de un gran sistema informático requiere la participación de varios desarrolladores. Los desarrolladores deben trabajar en un único proyecto WINDEV y compartir diferentes recursos (ventanas, clases, etc.).
WINDEV dispone de un Administrador de Código Fuente llamado "SCM" que permite compartir código fuente de diferentes proyectos entre desarrolladores, y obtener el historial completo de los cambios realizados (en el código, interfaz, etc.).
Principio del SCM
El Administrador de Código Fuente permite para almacenar y compartir proyectos y sus elementos.
El principio es el siguiente:
  • Una versión de referencia de cada uno de los proyectos se almacena en un servidor. Este conjunto de versiones se llama "Repositorio".
  • Cada desarrollador tiene una copia local de los diferentes proyectos.
    Principio del SCM
  • Cuando un desarrollador desea hacer cambios en el elemento de un proyecto (ventana, reporte, consulta, etc.), le informa al SCM que será el propietario del elemento de manera temporal. Para ello, el desarrollador debe extraer el elemento del repositorio.
  • El desarrollador adquiere permisos exclusivos sobre el elemento: puede realizar los cambios que desea en dicho elemento.
  • Los otros desarrolladores siguen trabajando con la copia de la versión de referencia del elemento (que se encuentra en el repositorio).
  • Una vez que el desarrollador ha realizado los cambios, reintegra el elemento en el repositorio.
  • Los demás desarrolladores reciben una notificación automática cuando se efectúa la reintegración. Así, pueden actualizar su copia local.
    Principio del SCM
El SCM gestiona el trabajo en equipo y permite obtener el historial de todos los cambios. Además, permite administrar y controlar los elementos compartidos entre varios proyectos.
¿SCM o GitHub?
También se pueden compartir elementos fuente a través de GitHub.
El entorno permite guardar proyectos, ventanas, páginas, reportes, clases, conjuntos de procedimientos y código en un repositorio Git. Para obtener más información, consulte Compartir proyectos a través de Git.
Sin embargo, se recomienda utilizar el SCM. En el SCM, además de comparar texto, se pueden comparar otros objetos (como las propiedades de los controles, por ejemplo). Una interfaz específica del SCM permite fusionar y comparar elementos fácilmente.
Repositorio
Para compartir un proyecto mediante el Administrador de Código Fuente, se debe crear un repositorio. El repositorio debe crearse una sola vez en el servidor.
¿Cuándo se puede crear el repositorio?
El repositorio se puede crear en diferentes momentos:
  • al instalar WINDEV.
  • al crear un proyecto que utiliza el SCM.
  • al importar un proyecto al SCM.
  • en cualquier momento, directamente desde WINDEV o desde el administrador del SCM.
¿Cuáles son los diferentes tipos de repositorios?
El repositorio puede crearse en uno de los siguientes modos:
  • HFSQL Classic.
  • HFSQL Client/Server.
    Si el repositorio está en formato HFSQL Client/Server, se puede utilizar de forma remota.
  • PCSCloud (solución paga, lista para usar). El modo PCSCloud permite acceder a las fuentes de los proyectos desde cualquier lugar, en cualquier momento. Este modo corresponde a una Nube privada (servidor dedicado) y ofrece numerosas opciones (plataforma específica, Centros de Control, etc.). Para obtener más información, consulte PCSCloud.
  • SCMDrive (solución paga, lista para usar). El modo SCMDrive permite acceder a las fuentes de los proyectos desde cualquier lugar, en cualquier momento. Esta solución utiliza un servidor compartido. Para obtener más información, consulte SCMDrive.
En el transcurso de este tutorial, crearemos nuestro repositorio al importar un proyecto en el SCM.
Importar un proyecto existente en el SCM
Para utilizar un proyecto existente con el Administrador de Código Fuente, simplemente agréguelo al repositorio. A continuación, vamos a agregar nuestro proyecto "WD Full Application".
Para facilitar el proceso, importaremos el proyecto a un nuevo repositorio local HFSQL Classic en el equipo de desarrollo. El funcionamiento es similar para otro tipo de repositorio.

Abrir el proyecto de ejemplo
Este tutorial utiliza el proyecto "WD Full Application". Para abrir este ejemplo:
  1. Vaya a la página de inicio de WINDEV (Ctrl + <).
  2. En la página de inicio, haga clic en "Tutorial", luego en "Tutorial - WINDEV application: Manage data", haga doble clic en "Full application - Answers".
Crear el repositorio e importar el proyecto
Vamos a importar el proyecto a un repositorio del SCM:
  1. En la pestaña "SCM", en el grupo "Agregar proyecto", haga clic en "Agregar proyecto al SCM". El asistente para agregar proyectos al SCM se abre:
    Asistente para agregar un proyecto al SCM
    Anteriormente no habíamos creado un repositorio. Vamos a crear uno.
  2. Haga clic en "Repositorio local" para crear un repositorio local en el equipo de desarrollo. La ventana para crear el repositorio se abre.
    Nuevo repositorio
  3. Especifique el directorio del repositorio (por ejemplo, "C:\My Projects\SCM Repositorio local).
  4. Haga clic en "Crear repositorio" para confirmar la creación del nuevo repositorio.
  5. El nuevo repositorio se selecciona automáticamente en el asistente. Vamos a agregar el proyecto al repositorio.
  6. Pase a la etapa siguiente.
  7. El asistente le pide que guarde el proyecto en el subdirectorio "Proyectos" del repositorio.
    Seleccionar directorio remoto
    Acepte esta ubicación. Pase a la etapa siguiente.
  8. Seleccione los elementos del proyecto que se agregarán al repositorio.
    Selección de elementos
    Agregue todos los elementos del proyecto. Pase a la etapa siguiente.
  9. El asistente le pide que seleccione las dependencias del proyecto que se agregarán al repositorio. Las dependencias corresponden a todos los elementos externos necesarios para el proyecto (imágenes, hojas de estilo, etc.).
    Agregue todas las dependencias del proyecto. Pase a la etapa siguiente.
  10. Haga clic en "Finalizar" para importar el proyecto en el SCM. El proyecto y sus elementos se agregan al repositorio.
    Compartir elementos del proyecto
    Cuando se agregan proyectos con recursos compartidos (análisis, ventanas, etc.) al SCM, estos recursos también pueden compartirse con otros proyectos que se encuentran en el SCM. Así, el elemento compartido solo se importa una vez en el SCM y los cambios realizados en ese elemento se aplican automáticamente a los demás proyectos.

Abrir un proyecto desde el SCM por primera vez

En nuestro ejemplo, el proyecto se encuentra en el SCM y podemos utilizarlo directamente.
En un caso real, para que otros desarrolladores trabajen en un proyecto que se encuentra en el Administrador de Código Fuente, deben descargar una copia del proyecto en el equipo local.
En ese caso, siga los siguientes pasos:
  1. Abra el proyecto desde el Administrador de Código Fuente: en la pestaña "Inicio", en el grupo "General", despliegue "Abrir" y seleccione "Abrir un proyecto desde el SCM".
  2. Especifique la ubicación del repositorio y cierre la ventana (esta etapa solo es necesaria si el proyecto actual no se ha importado en el SCM):
    Parámetros de ubicación del repositorio
  3. En la ventana que aparece, indique la conexión y el directorio local si es necesario:
    Conexión y directorio local
Observación: Si ya ha abierto el proyecto desde el SCM, puede abrir el proyecto normalmente o sobrescribir el contenido (para obtener todo el proyecto). Esta operación debe ser realizada una sola vez por cada desarrollador que utilice el proyecto. El desarrollador que agregó el proyecto al Administrador de Código Fuente (usted en este caso) no tiene que realizar ninguna operación.
La próxima vez, podrá abrir un proyecto importado en el SCM como cualquier otro proyecto: solo tiene que abrir la copia local del proyecto.
Manipular el proyecto mediante el SCM
Vamos a trabajar con el SCM en condiciones reales y a realizar las siguientes operaciones:
  • Cambiar una característica del proyecto.
  • Modificar una ventana del proyecto.

Cambiar una característica del proyecto

Vamos a modificar el proyecto aplicando la plantilla a las ventanas del sistema:
  1. Abra la descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. Haga clic en la pestaña "Estilo".
  3. Para la opción "Ventanas del sistema Info, YesNo, Confirm y Dialog (configuraciones WINDEV)", seleccione "Personalizadas (integradas en el proyecto)".
  4. Haga clic en "OK" para validar la ventana de descripción del proyecto.
Varias ventanas del SCM se abren:
  1. Primero se abre la ventana de extracción automática del proyecto. Para cambiar una característica del proyecto, éste debe extraerse.
    Extracción automática

    De forma predeterminada, el SCM utiliza un modo de extracción automático: si intenta modificar un elemento del SCM que no ha sido extraído, el SCM propone extraerlo automáticamente.
    WINDEV propone varios modos de extracción. Para obtener más información, consulte Modos de gestión del proyecto.
  2. La opción "Reintegrar proyecto automáticamente al final de la operación" reintegra el proyecto automáticamente una vez que se han realizado todos los cambios. Conserve esta opción.
  3. Haga clic en "OK" para validar la ventana.
  4. Varias ventanas de integración y extracción se abren par agregar el componente interno "WDFAA.wci" y sus elementos al proyecto del repositorio y extraerlos en el proyecto local. El componente contiene las ventanas del sistema que se van a personalizar. Valide las diferentes ventanas.
  5. La ventana de descripción del proyecto se cierra y el proyecto se reintegra automáticamente en el repositorio.

Modificar una ventana del proyecto

Ahora modificaremos la ventana "WIN_Product_form": debemos poder modificar la imagen haciendo clic en ella (como el botón "Modify").
Un elemento extraído (interfaz de usuario, código, etc.) puede modificarse como cualquier otro elemento de un proyecto que no está incluido en el SCM.
Sin embargo, los otros desarrolladores no pueden ver los cambios realizados en el elemento.
Si otros desarrolladores necesitan trabajar en el elemento extraído, utilizarán la versión del repositorio.
Esto permite que una aplicación evolucione conservando una versión estable en el repositorio.

Para modificar la ventana "WIN_Product_form":
  1. Seleccione la ventana "WIN_Product_form" en el explorador de proyectos y haga doble clic en el elemento para abrirlo en el editor.
    Editor de ventanas
  2. La extracción automática se activa al hacer el primer cambio: basta con mover un control para extraer el elemento. También puede hacer clic en el ícono "Extraer" de la cinta de opciones (Extraer).
  3. La ventana de extracción se abre:
    Extracción de un elemento
  4. El SCM propone tres modos de extracción:
    • Exclusivo (modo recomendado): nadie puede extraer el elemento si no se ha reintegrado. El elemento solo se puede extraer para realizar pruebas.
    • Para pruebas: el elemento se puede modificar, pero las modificaciones no se pueden reintegrar.
    • Múltiple: otros usuarios también pueden extraer el elemento. En este caso, se pueden ver las diferencias de las versiones del elemento al reintegrarlo. Este modo está reservado para casos específicos y desarrolladores experimentados.
  5. Vamos a extraer la ventana en modo exclusivo. Conserve la opción "Exclusivo".
  6. Introduzca un comentario ("Image modification", por ejemplo). Este comentario será útil para los demás desarrolladores.
  7. Confirme la extracción. La ventana se extrae correctamente.
  8. Abra la ventana de descripción del control Imagen (seleccione "Descripción" en el menú contextual).
  9. En la pestaña "UI", modifique el cursor: seleccione el cursor "Mano sistema".
  10. Valide la ventana de descripción del control.
  11. Abra el código del control Imagen: seleccione el control Imagen y pulse F2, por ejemplo.
  12. Escriba el siguiente código en el evento "Clic...":
    // Runs the click code of the button that modifies the image
    BTN_Modify.ExecuteProcess(trtClick)
  13. Cierre la ventana de código.
  14. Guarde la ventana (Ctrl + S).


Probemos los cambios:
  1. Pruebe el proyecto (haga clic en Probar proyecto en los botones de acceso rápido).
  2. Seleccione un producto y haga clic en "Modify".
  3. En la ficha que se muestra, haga clic en la imagen del producto: el selector de archivos se abre para modificar la imagen del producto. Este es el modo de funcionamiento esperado.
  4. Cierre la ventana de pruebas.

Reintegrar el elemento extraído

Una vez que se han realizado y probado las modificaciones, se puede reintegrar la ventana en el repositorio. Así, otros desarrolladores podrán acceder a los cambios realizados.
En la pestaña "SCM", en el grupo "Elemento actual", haga clic en "Reintegrar". La siguiente ventana se abre:
Reintegración de un elemento
Esta ventana permite:
  • ver las los cambios realizados comparando el elemento del repositorio con el elemento extraído (botón "Mis cambios...").
    Combinar código
    Puede comparar un elemento con una de sus versiones anteriores. Esto permite comparar el código para recuperar una sección de código "perdida" o eliminada por error por otro desarrollador.
  • acceder al historial del elemento en el repositorio (botón "Propiedades...").
  • introducir un comentario sobre los cambios realizados. De forma predeterminada, WINDEV propone el comentario que se introdujo al extraer el elemento.
  • enviar un mensaje a otros desarrolladores.
  • reintegrar los cambios realizados en el elemento y conservar el elemento extraído (opción "Conservar elemento extraído").
    Si utiliza los Centros de Control, puede finalizar la tarea actual al reintegrar el elemento en el Administrador de Código Fuente. Esta funcionalidad es útil para hacer un seguimiento de tareas, corregir errores, etc.
Valide la ventana de reintegración. La ventana se muestra en el editor.
Información adicional
En este tutorial vimos cómo crear, agregar y manipular un proyecto en un repositorio del SCM.
El SCM ofrece muchas otras opciones y funcionalidades:
Le recomendamos hacer copias de seguridad del repositorio de forma regular. Estas copias de seguridad pueden realizarse a través del administrador del SCM.
Para saber más sobre el SCM, consulte el Administrador de Código Fuente.
Conclusión
En los próximos tutoriales, utilizaremos el proyecto "WD Full Application". Para simplificar las operaciones, le recomendamos desconectarse del SCM:
  1. Abra la ventana de descripción del proyecto: en la pestaña "Proyecto", en el grupo "Proyecto", haga clic en "Descripción".
  2. En la pestaña "SCM", seleccione la opción "Sin SCM ni administrador externo (GIT)".
  3. Valide la ventana de descripción del proyecto.
Tabla de contenido
Versión mínima requerida
  • Versión 2024
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 05/12/2023

Señalar un error o enviar una sugerencia | Ayuda local