stringtranslate.com

Repositorio (control de versiones)

En los sistemas de control de versiones , un repositorio es una estructura de datos que almacena metadatos para un conjunto de archivos o una estructura de directorios . [1] Dependiendo de si el sistema de control de versiones en uso es distribuido, como Git o Mercurial , o centralizado, como Subversion , CVS o Perforce , todo el conjunto de información en el repositorio puede estar duplicado en el sistema de cada usuario o puede mantenerse en un solo servidor . [2] Algunos de los metadatos que contiene un repositorio incluyen, entre otras cosas, un registro histórico de cambios en el repositorio, un conjunto de objetos de confirmación y un conjunto de referencias a objetos de confirmación, llamados encabezados .

El objetivo principal de un repositorio es almacenar un conjunto de archivos, así como el historial de cambios realizados en esos archivos. [3] Sin embargo, la forma exacta en que cada sistema de control de versiones maneja el almacenamiento de esos cambios difiere enormemente. Por ejemplo, Subversion en el pasado dependía de una instancia de base de datos, pero desde entonces ha pasado a almacenar sus cambios directamente en el sistema de archivos. [4] Estas diferencias en las técnicas de almacenamiento generalmente han llevado a diversos usos del control de versiones por parte de diferentes grupos, según sus necesidades. [5]

Descripción general

Un repositorio que se muestra en GitLab , una forja de código fuente abierto.

En ingeniería de software, se utiliza un sistema de control de versiones para realizar un seguimiento de las versiones de un conjunto de archivos, generalmente para permitir que varios desarrolladores colaboren en un proyecto. El repositorio realiza un seguimiento de los archivos del proyecto, que se representa como un gráfico .

Un sistema de control de versiones distribuido se compone de repositorios centrales y sucursales . Un repositorio central existe en el servidor. Para realizar cambios en él, un desarrollador primero trabaja en un repositorio de sucursales y procede a confirmar el cambio en el primero.

Fraguas

Un forjador de código es una interfaz web para un sistema de control de versiones. Un usuario puede explorar repositorios y sus archivos constituyentes en la propia página.

Alojamiento web estático

Si bien las forjas se utilizan principalmente para realizar operaciones de control de versiones, algunas permiten a los usuarios alojar páginas web estáticas cargando su código fuente (como HTML y JavaScript , pero no PHP ) a un repositorio. Esto se hace generalmente para proporcionar documentación o una página de destino para un proyecto de software.

El uso de repositorios como un lugar para cargar documentos web permite integrar el control de versiones y, además, permite una iteración rápida porque los cambios se envían a través del sistema de control de versiones en lugar de tener que cargar el archivo a través de un protocolo como FTP . [6]

Ejemplos de este tipo de servicio incluyen GitHub Pages y GitLab Pages .

Véase también

Referencias

  1. ^ "SVNBook" . Consultado el 20 de abril de 2012 .
  2. ^ "Conceptos y mejores prácticas de control de versiones". 2018-03-03. Archivado desde el original el 2020-04-27 . Consultado el 2020-07-10 .
  3. ^ "Introducción: información sobre el control de versiones". Git SCM.
  4. ^ Ben Collins-Sussman; Brian W. Fitzpatrick; C. Michael Pilato (2011). "Capítulo 5: Estrategias para la implementación de repositorios". Control de versiones con Subversion: para Subversion 1.7. O'Reilly.
  5. ^ "Diferentes enfoques para la ramificación del control de código fuente". Stack Overflow . Consultado el 15 de noviembre de 2014 .
  6. ^ "Páginas de GitHub | Sitios web para ti y tus proyectos, alojados directamente desde tu repositorio de GitHub". GitHub .