✒️SAP BTPFIORI / Los sistemas de control de versiones Por Roberto Santucho
SAP BTPFIORI Los sistemas de control de versiones

1. EL SISTEMA DE CONTROL DE VERSIONES: permite la capacidad de registrar los cambios realizados sobre los archivos del codigo fuente. Tenemos 2 tipos de sitemas de control de versiones:
- Los sitemas de control de Versiones Centralizados (VCS).
- permite revertir los archivos seleccionados o el proyecot completo a un estado anterior
- subversion: herramienta en la que ha confiado para guardar un historico de revision de versiones, en un punto centralizado---> problema si perdemos conectividad
- Los sistemas de control de Verstions Distribuidos (DVCS).
- nos permite crear un repositorio local y poder trabajar de manera local SIN NECESIDAD DE ESTAR CONECTADO A LA RED.
- ejemplos: Git, Mercurial, Bazzar. En este tipo de herramientas, LOS CLIENTES REPLICAN COMPLETAMENTE EL REPOSITORIO. MAS CARACTERISTICAS:
- Reporte de cambios
- Sincronizacion
- Backup y restauracion
- Crear branch
- Realizar merge: es cuando enviamos las modificaciones del branch al proyecto principal.
2. QUE ES EL GIT?
Software para el manejo de control de versiones de nuestro codigo.
- velocidad, agil y sencillo
- nos proporciona las herramientas para desarrollar un trabajo en equipo de manera inteligente y rapida.
CARACTERISTICAS IMPORTANTES
- rapidez en la gestion de ramas o branchs, debido a que Git nos dice que un cambio sera fusionado
- la gestion distribuida, los cambios se importan como ramas adicionales y pueden ser fucionados de la misma maera como se hace en la rama local
- gestion eficiente de grandes proyectos
- la mas util y practica es el sistema de control de modificaciones: se genera una nueva version para el proyecto CADA VEZ QUE ALGUIEN CAMBIA EL CODIGO.
3. LAS VENTAJAS DEL GIT
GIT: SISTEMA DE CONTROL DE VERSIONES DISTRIBUID, GRATIS, OPEN SOURCE, RAPIDO Y EFICIENTE.
GITHUB: PLATAFORMA WEB para alojar repositorios de codigo usand el sistema de Git.
Algunas de la ventajas de usuar GIT:
- El desarrollo simultaneo: tenemos nuestra propia copia local del codigo
- Las versiones mas rapidas: (ramas)
- La integracion integrada: al ser popular, Git se integra en la mayoria de las herramientas y productos.
- El soporte tecnico de la comunidad solida: codigo abierto + se ha convertido en el estandar para el control de versiones.
- Git funciona con cualquier equipo: aumenta la productividad de un equipo al fomentar:
- la colaboracion
- aplicar directivas
- automatizar procesos
- mejorar la visibilidad y a rastreabilidad del trabajo
- Las solicitudes de incorporacion de cambios: permite analizar los cambios de codigo con el equipo antes de combinarloss en la rama principal.
- Las directivas de ramas: podemos configurar GitHub y Azure DevOps (conecta al equipo de desarrollo con el de operaciones) para aplicar flujos de trabajo y procesos coh
4. EL SISTEMA DISTRIBUIDO
Cuenta con un servidor central donde cada usuario puede almacenar sus archivos en un repositorio, a este metodo de le llama clonacion, donde cada repositorio clonado puede intercambiar las versions con otros reporsitorios clonados del mismo modo.
| asi nace Git, usando un scvd PERO NO EN UN SERVIDOR EXTERNO SINO, EN LA MISMA COMPUTADORA. |
Plataformas de desarrollo colaborativo que admiten el uso de Git.
- GitLab
- Bitbucket
- Codegiant
- GitHub
- SourceForge.
5. LAS ETAPAS DE UN ARCHIVO EN GIT
- al realizar un cambio, el estado del archivo pasa a estamdo "Modificado" y esta en el working directory. CONSIDERAMOS QUE EL CMABIO DEBE IR A UNA REVISION
- una vez seleccionados lo archivos que quermos subir al repositorio, estos pasaran a estado "Preparado" y se encontraran en la staging area. VA A UNA REVISION
- cuando pasemos los cambios a estado "Confirmado", ya estaran en nuestro git repository.
UN PROYECTO GIT SE ESTRUCTURA EN TRES PARTES O 3 CAJAS
- El area del working directory: aqui podemos hacer cualquier cambio sin afectar nuestro repositorio en ablosluto. Comando git status devuelve archivos modificados o creados.
- El staging area: donde va lo modificado y ACEPTAMOS QUE VAYAN A UNAR FUTURA REVISION CON EL COMANDO git add. Damos el nombre a nuestra nueva version y se creo una "copia" sobre como quedaria nuestro repositorion en produccion. PARA PASAR NUESTRO CODIGO DE STATING A GIT REPOSITORY (AUN NO SE PUBLICA EN GITHUB) comando git commit -m "Nombre nueva version". El codigo pasa de setado preparado a confirmado
- El area de commit o el git directory: cuando ya estemos seguros y pasemos estos cambios a estado "confirmado", ya estaran en nuestro git repository
5.1 QUE SON LAS RAMAS Y COMO FUNCIONAN'
- SON LOS NUEVMOS CAMINOS QUE TOMA EL PROYECTO. Existe al menos la rama "master" o main
- es una linea de progreso diferente que puede llegar a fusionarse
- se crea cada vez que se realiza una modificacion, DE TAL MANERA QUE SE PUEDE TRABAJAR EN UN AMBIENTE AISLADO
- SE PUEDE DESCARTAR O ELIMINAR SI NO ES NECESARIA O NO PASA LAS PRUEBAS
- es comun tener la main y otra llamada dev, que es con la que hay que trabajar para los cambio o nueva funcionalidad
- crear una nueva rama lo conocemos como Checkout y unir dos ramas es el Merge
ORIGIN es el nombre predeterminado cuando clonamos un repositorio por primera vez desde GitHub o cualquier otro sistema remotro.
Estandar:
- RAMA MASTER
- RAMA DEVELOPMENT
- RAMA HOTFIX: con issues o errores a solucionar.
 
 
 
Sobre el autor
Publicación académica de Roberto Hernan Santucho, en su ámbito de estudios para la Carrera Consultor SAP BTP Fiori.
Roberto Hernan Santucho
Profesión: Ingeniero en Sistemas - Mexico - Legajo: VA51C
✒️Autor de: 43 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Roberto Santucho







Disponibilidad Laboral: FullTime


















