Integración continua: control de versiones

Los sistemas de control de versiones, también conocidos como control de fuente, sistemas de administración de código fuente o sistemas de control de revisión, son un mecanismo para mantener múltiples versiones de sus archivos, de modo que cuando modifique un archivo aún pueda acceder a las revisiones anteriores.

El primer sistema de control de versiones popular fue una herramienta patentada de UNIX llamada SCCS(Sistema de control de código fuente) que se remonta a la década de 1970. Esto fue reemplazado porRCS, el sistema de control de revisiones y posteriores CVS, Sistema de Versiones Simultáneas.

Ahora, el sistema de control de versiones más utilizado es Subversion y Git. Primero veamos por qué necesitamos usar un sistema de control de versiones y luego veamos cómo poner nuestro código fuente enGit source code repository system.

Propósito del sistema de control de versiones

Una razón por la que usamos el término control de versiones en lugar de control de fuentes es que el control de versiones no es solo para el código fuente. Cada artefacto relacionado con la creación de su software debe estar bajo control de versiones.

    Developers should use it for source code - De forma predeterminada, todo el código fuente debe almacenarse en el sistema de control de versiones

    Related artefacts- Cada sistema tendría artefactos relacionados con el código fuente, como scripts de base de datos, scripts de construcción e implementación, documentación, bibliotecas y archivos de configuración para su aplicación, su compilador y colección de herramientas, etc. Todos estos complementan todo el proceso de desarrollo e implementación y también deben almacenarse en el sistema de control de versiones.

Al almacenar toda la información de la aplicación en el control de código fuente, es más fácil volver a crear los entornos de prueba y producción en los que se ejecuta la aplicación. Esto debe incluir información de configuración para la pila de software de su aplicación y los sistemas operativos que componen el entorno, archivos de zona DNS, configuración de firewall, etc.

Como mínimo, necesita todo lo necesario para volver a crear los binarios de su aplicación y los entornos en los que se ejecutan. El objetivo es tener almacenado de forma controlada todo lo que pueda cambiar en cualquier momento de la vida del proyecto. Esto le permite recuperar una instantánea exacta del estado de todo el sistema, desde el entorno de desarrollo hasta el entorno de producción, en cualquier momento del historial del proyecto.

Incluso es útil mantener los archivos de configuración para los entornos de desarrollo del equipo de desarrollo en el control de versiones, ya que facilita que todos en el equipo usen la misma configuración. Los analistas deben almacenar los documentos de requisitos. Los evaluadores deben mantener sus scripts y procedimientos de prueba en control de versiones. Los gerentes de proyecto deben guardar aquí sus planes de lanzamiento, gráficos de progreso y registros de riesgos.

En resumen, cada miembro del equipo debe almacenar cualquier documento o archivo relacionado con el proyecto en control de versiones.

Trabajar con Git para el sistema de control de versiones de código fuente

Esta sección se centrará ahora en cómo se puede utilizar Git como sistema de control de versiones. Se centrará en cómo puede cargar su código en el sistema de control de versiones y administrar los cambios en él.

Nuestra aplicación de demostración

Para el propósito de todo este tutorial, veremos un simple Web ASP.Netaplicación que se utilizará para todo el Proceso de Integración Continua. No necesitamos centrarnos en todos los detalles del código para este ejercicio, solo tener una descripción general de lo que hace el proyecto es suficiente para comprender todo el proceso de integración continua. Esta aplicación .Net fue construida usando elVisual Studio Integrated Development Environment.

La siguiente captura de pantalla es la estructura de la solución en el entorno de Visual Studio. Es una aplicación web muy simple que tiene el código principal en elDemo.aspx archivo.

El código en el archivo Demo.aspx se muestra en el siguiente programa:

<html xmlns = "http://www.w3.org/1999/xhtml">
   <head runat = "server">
      <title>TutorialsPoint</title>
   </head>
   
   <body>
      <form id = "form1" runat="server">
         <div><%Response.Write("Continuous Integration"); %></div>
      </form>
   </body>
   
</html>

El código es muy simple y solo envía la cadena "Integración continua" al navegador.

Cuando ejecuta el proyecto en Google Chrome, el resultado será como se muestra en la siguiente captura de pantalla.

Mover el código fuente a Git

Vamos a mostrar cómo mover el código fuente a Git desde la interfaz de línea de comandos, para que el conocimiento de cómo se puede usar Git sea más claro para el usuario final.

Step 1 - Inicializar el Git Repository. Vaya al símbolo del sistema, vaya a la carpeta de su proyecto y emita el comandogit init. Este comando agregará los archivos de Git necesarios a la carpeta del proyecto, de modo que Git pueda reconocerlo cuando sea necesario cargarlo en el repositorio.

Step 2- Agregar sus archivos que deben agregarse al repositorio de Git. Esto se puede hacer emitiendo elgit add command. La opción de punto le dice a Git que todos los archivos en la carpeta del proyecto deben agregarse al repositorio de Git.

Step 3- El paso final es enviar los archivos del proyecto al repositorio de Git. Este paso es necesario para garantizar que todos los archivos ahora formen parte de Git. El comando que se emitirá se muestra en la siguiente captura de pantalla. los–m option es proporcionar un comentario sobre la carga de archivos.

Su solución ahora está disponible en Git.