Repaso de Herramientas --- * **Coordinador Tecnológico:** Rafael Palau * **Arquitecto:** Horacio Nemeth * **Consultores:** Julio Mello Marcos Benítez Marco Aquino Ilse Grau Alan Sanier Lauro Segovia [TOC] --- ### ¿ Qué es un IDE ? El entorno de desarrollo integrado, denominado **IDE** (entorno de desarrollo integrado), reúne las herramientas más importantes para crear software. Por ejemplo, estas herramientas incluyen editores de código fuente y resaltado de sintaxis, compiladores, depuradores, intérpretes, administración de versiones etc. --- #### Caracteristicas de un IDE * Editor de código fuente * Cantidad de lenguajes compatibles * Sistemas operativos compatibles * Características de la automatización * Impacto en el rendimiento del sistema * Plugins y extensiones * Depuradores --- ### Maven Es una poderosa herramienta para gestionar proyectos de software en Java. También puedes usar otros lenguajes para crear proyectos de software, pero Maven está desarrollado en Java, por lo que históricamente se usa más para proyectos Java. --- #### Gestión de Repositorios * Repositorio Local * Repositorio Central * Repositorio Externo --- #### Gestión de ciclo de vida de contrucción ![](https://i.imgur.com/DGRWUdz.png) <em>Figura: Ciclo de vida de construcción del proyecto</em> --- #### Estructura del proyecto Maven ##### Arquetipo **Quickstart** ![](https://i.imgur.com/476okWE.png) <em>Figura: estructura del arquetipo maven quickstart </em> --- ### Herramienta de versionado de código Git **Git** es un sistema de versionado de código descentralizado, lo que significa que varios servidores pueden actuar como repositorios, pero cada copia en la propia máquina de cada desarrollador es también una copia revisada completa del código. --- #### Esquema del repositorio Git ![](https://i.imgur.com/VIoqgrg.png) <em>Figura: Esquema de repositorio git</em> --- #### ¿Qué es un repositorio en Git? Es una carpeta que contiene todo los archivos fuentes y todo el historial de cambios realizados sobre los archivos en seguimiento. --- #### Git cuenta con dos repositorios En los proyectos gestionados por git se cuentan con dos repositorios: * **Repositorio remoto :** contiene el proyecto y permite el acceso al mismo desde internet * **Repositorio local :** contiene una copia del repositorio externo y todos los cambios primeramente son almacenados en ella. --- #### Comandos Git ##### Clonado de proyecto * `git clone <url del repositorio remoto>` > Con el comando anterior el git realiza una copia local del proyecto. --- #### Comandos Git ##### Agregar archivos al proyecto * `git add <nombre del archivo>` > Con el comando anterior el git registrar el archivo o los archivo como archivo de seguimiento. --- #### Comandos Git ##### Confirmar cambios locales * `git commit -m <mensaje de confirmacion>` > Con el comando anterior el git confirma los cambios y actualiza el indice local del repositorio con los cambios realizados. --- #### Comandos Git ##### Transferir cambios locales * `git push origin <branch>` > Con el comando anterior el git tranfiere los archivos confirmados localmente al repositorio remoto en la rama especificada. --- #### Comandos Git ##### Transferir cambios remotos * `git pull origin <branch>` > Con el comando anterior el git transfiere todos los cambios disponibles del repositorio remoto al repositorio local. --- #### Comandos Git ##### Inicialización del proyecto Git > `git init` ![](https://i.imgur.com/VpyrIDS.png) <em>Figura: Comando para iniciar un repositorio local en git</em> --- #### Comandos Git ##### Configuración de usuario Antes de poder utilizar *git* es necesario agregar la configuración de usuario. * `git config —global user.name <nombre>` * `git config —global user.email <correo>` > Comandos para agregar en la configuración global del git el usuario y correo. --- #### Esquema de estados del Git ![](https://i.imgur.com/csgollm.png) <em>Figura: Esquema de estados del git</em> --- #### Ejemplo de estado de Git * `git status` ![](https://i.imgur.com/b4UfYjH.png) <em>Figura: esquema de estado git, sin seguimiento</em> --- #### Ejemplo de estado de Git * `git status` ![](https://i.imgur.com/5nwnn5H.png) <em>Figura: esquema de estado git, en seguimiento </em> --- #### Ejemplo de estado de Git > El GitBash colorea en color rojo los archivos que no estan en seguimiento, en color verde cuando fueron agregados al *HEAD* (staging area) --- ### Gitlab **Gitlab** es un servicio web de control de versiones y desarrollo de software colaborativo basado en Git. Además de gestor de repositorios, el servicio ofrece también alojamiento de wikis y un sistema de seguimiento de errores, todo ello publicado bajo una Licencia de código abierto. --- ### Creación de repositorio remoto * Acceder al gitlab interno : https://gitlab.siare.gov.py/users/sign_in * Seleccionar el botón de **New project** ![](https://i.imgur.com/HsIWKyY.jpg) <em>Figura: Creación de proyecto git remoto</em> --- ### Creación de repositorio remoto * Seleccionar el la creación de un proyecto limpio (Create new project) ![](https://i.imgur.com/hnggsvM.jpg) <em>Figura: Creación de proyecto git remoto limpio</em> --- ### Creación de repositorio remoto * Configurar datos requeridos del proyecto nuevo ![](https://i.imgur.com/aNT8hPG.jpg) <em>Figura: Configuración de proyecto git remoto</em> --- ### Creación de repositorio remoto * Configurar datos requeridos del proyecto nuevo ![](https://i.imgur.com/wnsrf25.jpg) <em>Figura: Configuración de proyecto git remoto</em> --- ### Creación de repositorio remoto * Vista del nuevo proyecto creado ![](https://i.imgur.com/YMOGh25.jpg) <em>Figura: Vista del nuevo proyecto git remoto</em> --- ### Configuración de archivo *gitignore* > Para la mayoría de los proyectos es necesario configurar que archivos no serán versionados. > El archivo *.gitignore* permite definir expresiones para excluir archivos o directorios del proyecto git --- #### Ejemplo de configuración ```shell= .apt_generated .classpath .factorypath .project .settings .springBeans .sts4-cache target/ ``` > El archivo *.gitignore* es un archivo oculto que esta dentro del la raíz del proyecto git --- ### Ejercicios * Crear un proyecto dentro del Gitlab * Clonar el proyecto al equipo local * Agregar el archivo *.gitignore* al proyecto * Agregar el archivo *application.properties* al proyecto * Agregar el plugins de *spring-boot-maven-plugin* * Agregar un método para imprimir las propiedades del sistema
{"metaMigratedAt":"2023-06-16T16:44:42.117Z","metaMigratedFrom":"YAML","title":"IDE, Maven, Git","breaks":true,"description":"Repaso","slideOptions":"{\"transition\":\"slide\"}","contributors":"[{\"id\":\"e91465d8-053e-4b6c-9d94-c55eaa5843ee\",\"add\":7358,\"del\":725}]"}
    421 views