Cómo utilizar el sistema de control de versiones de Git en Linux [Guía completa]

Cómo utilizar el sistema de control de versiones de Git en Linux [Guía completa]

Control de versiones. (control de revisión o control de fuente) es una forma de registrar cambios en un archivo o colección de archivos a lo largo del tiempo para que pueda recuperar versiones específicas más adelante. Un sistema de control de versiones (o VCS. para abreviar) es una herramienta que registra cambios en archivos en un sistema de archivos.

Existen muchos sistemas de control de versiones, pero Git. es actualmente el más popular y de uso frecuente, especialmente para la gestión de código fuente. El control de versiones se puede usar para casi cualquier tipo de archivo en una computadora, no solo el código fuente.

Los sistemas/herramientas de control de versiones ofrecen varias características que permiten a las personas o grupos de personas:

  • crear versiones de un proyecto.
  • realizar un seguimiento de los cambios con precisión y resolver conflictos.
  • fusionar cambios en una versión común.
  • revertir y deshacer cambios en archivos seleccionados o en un proyecto completo.
  • acceder a versiones históricas de un proyecto para comparar cambios a lo largo del tiempo.
  • ver quién modificó por última vez algo que podría estar causando un problema.
  • cree una copia de seguridad segura fuera del sitio de un proyecto.
  • use varias máquinas para trabajar en un solo proyecto y mucho más.

Un proyecto bajo una versión El sistema de control como Git. tendrá principalmente tres secciones, a saber:

  • un repositorio. una base de datos para registrar el estado o los cambios en sus archivos de proyecto. Contiene todos los metadatos y objetos de Git necesarios para el nuevo proyecto. Tenga en cuenta que esto es normalmente lo que se copia cuando clona un repositorio de otra computadora en una red o servidor remoto.
  • un directorio o área de trabajo. almacena una copia de los archivos del proyecto en el que puede trabajar (hacer adiciones, eliminaciones y otras acciones de modificación).
  • un área de preparación: un archivo (conocido como índice en Git) dentro del directorio de Git, que almacena información sobre los cambios, que está listo para confirmar (guardar el estado de un archivo o conjunto de archivos) en el repositorio.

Hay dos tipos principales de VCS, con la principal diferencia en el número de repositorios:

  • Sistemas de control de versiones centralizados (CVCS). aquí cada miembro del equipo del proyecto obtiene su propio directorio de trabajo local, sin embargo, realiza cambios en un solo repositorio central.
  • Sistemas de control de versiones distribuidos (DVCS). debajo de esto, cada miembro del equipo del proyecto obtiene su propio directorio de trabajo local y directorio Git donde t Pueden hacer confirmaciones. Después de que una persona realiza una confirmación localmente, otros miembros del equipo no pueden acceder a los cambios hasta que los envíe al repositorio central. Git es un ejemplo de DVCS.

freestar.config.enabled_slots.push

Además, un Git. el repositorio puede ser vacío. (repositorio que no tiene un directorio de trabajo) o no vacío. (uno con un directorio de trabajo). Los repositorios compartidos. (o públicos o centrales) siempre deben estar vacíos; todos los repositorios de Github están desnudos.

Aprende el control de versiones con Git

Git. es un sistema de control de versiones gratuito y de código abierto, rápido, potente, distribuido, fácil de usar y popular que es muy eficiente con grandes proyectos y tiene un notable sistema de ramificación y fusión. Está diseñado para manejar datos más como una serie de instantáneas de un mini sistema de archivos, que se almacena en un directorio Git.

El flujo de trabajo en Git. es muy simple: haces modificaciones a los archivos en su directorio de trabajo, luego agregue selectivamente solo aquellos archivos que han cambiado, al área de preparación, para ser parte de su próxima confirmación.

Una vez que esté listo, realiza una confirmación, que toma el archivos del área de ensayo y guarda esa instantánea de forma permanente en el directorio de Git.

Para instalar Git. en Linux, use el comando apropiado para su distribución de elección:

$ sudo apt install git [En Debian/Ubuntu. $ sudo yum install git [En CentOS/RHEL.

Después de instalar Git, se recomienda que le digas a Git. quién es usted proporcionando su nombre completo y dirección de correo electrónico, de la siguiente manera:

$ git config–global user.name “Aaron Kili” $ git config–global user.email “[email protected ] ”

Para comprobarlo r Configuración de Git, use el siguiente comando.

$ git config–list  Ver Git Configuración  Ver configuración de Git Ver configuración de Git

Crea un nuevo repositorio de Git

Los repositorios compartidos. o los flujos de trabajo centralizados son muy comunes y eso es lo que demostraremos aquí. Por ejemplo, asumimos que se le ha asignado la tarea de configurar un repositorio central remoto para administradores de sistemas/programadores de varios departamentos de su organización, para trabajar en un proyecto llamado bashscripts. que se almacenará en /projects/scritpts/ en el servidor.

SSH. en el servidor remoto y crea el directorio necesario, crea un grupo llamado sysadmins. (agregue todos los miembros del equipo del proyecto a este grupo, por ejemplo, administrador de usuarios) y establezca los permisos adecuados en este directorio.

# mkdir-p/projects/scripts/# groupadd sysadmins # usermod-aG sysadmins admin # chown: sysadmins-R/projects/scripts/# chmod 770-R/projects/scripts/

Luego inicialice un repositorio de proyecto simple.

# git init–bare/projects/scripts/bashscripts  Inicializar el repositorio compartido de Git  Inicializar el repositorio compartido de Git Inicializar el repositorio compartido de Git

En este punto, ha inicializado con éxito un directorio Git. que es la instalación de almacenamiento central para el proyecto. Intente hacer una lista del directorio para ver todos los archivos y directorios allí:

# ls-la/projects/scripts/bashscripts/ Lista del repositorio compartido de Git Lista Git Repositorio compartido Lista de repositorio compartido de Git

Clona un repositorio de Git

Ahora clona el repositorio de Git compartido remoto en tu computadora local a través de SSH. (también puede clonar a través de HTTP/HTTPS. si tiene un servidor web instalado y configurado adecuadamente, como es el caso de la mayoría de los repositorios públicos en Github), por ejemplo:

$ git clone ssh://[correo electrónico p rotected] _server_ip:/projects/scripts/bashscripts

Para clonarlo en un directorio específico ( ~/bin/bashscripts. , use el siguiente comando.

$ git clone ssh://[correo electrónico protegido] _server_ip:/projects/scripts/bashscripts ~/bin/bashscripts Clonar el repositorio compartido de Git en local Clonar repositorio compartido de Git en local Clonar repositorio Git compartido a local

Ahora tienes una instancia local del proyecto en un repositorio no desnudo. (con un directorio), puede crear la estructura inicial del proyecto (es decir, agregar un archivo README.md. subdirectorios para diferentes categorías de scripts, p. ej. recon para almacenar scripts de reconocimiento, sysadmin ro almacenar sysadmin scripts, etc. ):

$ cd ~/bin/bashscripts/$ ls-la  Crear estructura de proyecto Git  Crear estructura de proyecto Git Crear estructura de proyecto Git

Verificar un resumen de estado de Git

Para mostrar el estado de su directorio de trabajo, use el comando de estado. que le mostrará cualquier cambio que haya realizado; qué archivos no están siendo rastreados por Git; los cambios que se han realizado, etc.

$ git status  Verificar estado de Git  Verificar estado de Git Verificar estado de Git

Cambios de etapa de Git y confirmación

A continuación, organice todos los cambios utilizando el comando add. con el modificador-A y realice la confirmación inicial. La bandera-a le indica al comando que prepare automáticamente los archivos que se han modificado, y-m se usa para especificar un mensaje de confirmación:

$ git add-A $ git commit-a-m “Confirmación inicial”  Do Git Commit Do Git Commit Do Git Commit

Publicar confirmaciones locales en un repositorio Git remoto

Como líder del equipo del proyecto, ahora que has creado la estructura del proyecto, puede publicar los cambios en el repositorio central usando el comando push. como se muestra.

$ git push origin master  Enviar confirmación al repositorio Centrol Git Enviar confirmación al repositorio Centrol Git Enviar confirmación al repositorio Centrol Git

En este momento, su repositorio local de git debe estar actualizado con el repositorio central del proyecto (origen), puede confirmar esto ejecutando el comando de estado. una vez más.

$ git status Verificar estado de Git  Verificar el estado de Git Verificar el estado de Git

También puede informar a sus colegas que comiencen a trabajar en el proyecto clonando el repositorio para sus computadoras locales.

Crear una nueva rama de Git

La ramificación le permite trabajar en una función de su proyecto o solucionar problemas rápidamente sin tocar la base de código (rama maestra). Para crear una nueva rama y luego cambiar a ella, use los comandos branch. y checkout. respectivamente.

$ git branch latest $ git checkout latest

Alternativamente, puedes crear una nueva rama y cambiar a ella en un solo paso usando el comando checkout. con la marca-b.

$ git checkout-b latest

También puedes crear una nueva rama basado en otra rama, por ejemplo.

$ git checkout-b latest master

Para verificar en qué rama se encuentra, use el comando de rama. (un carácter de asterisco indica la rama activa):

$ git branch  Verificar el ancho de la rama activa  Check Active Branch Check Active Branch

Después de crear y cambiar a la nueva rama, realice algunos cambios debajo de ella y hacer algunas confirmaciones.

$ vim sysadmin/topprocs.sh $ git status $ git commit agregar sysadmin/topprocs.sh $ git commit-a-m ‘modificado topprocs.sh’

Combinar cambios de una rama a otra

Para fusionar los cambios de la prueba de la rama en la rama principal, cambie a la rama principal y realice la fusión.

$ git checkout master $ git merge test Fusionar la rama de prueba con la maestra  Fusionar rama de prueba en maestra Fusionar la rama de prueba en la maestra

Si ya no necesita una rama en particular, puede eliminarla usando el modificador-d.

$ git branch-d test

Descargar cambios desde el repositorio central remoto

Suponiendo que los miembros de su equipo hayan enviado cambios al repositorio central del proyecto, puede descargar cualquier cambio en su instancia local del proyecto usando el comando pull.

$ git pull origin O $ git pull origin master # si ha cambiado a otra rama  Extraer cambios del repositorio central  Extraer cambios del repositorio central Extraer cambios del repositorio central

Inspeccionar el repositorio de Git y realizar comparaciones

En esta última sección, cubriremos algunas funciones útiles de Git que realizan un seguimiento de todas las actividades que ocurrieron en su repositorio, lo que le permite ver el historial del proyecto.

La primera característica es el registro de Git, que muestra los registros de confirmación:

$ git log  Ver registros de confirmación de Git  Ver registros de confirmación de Git Ver registros de confirmaciones de Git

Otra característica importante es el comando show. que muestra varios tipos de objetos (como confirmaciones, etiquetas, árboles, etc.):

$ git show  Git Show Objects  Git Show Objects Git Show Objects

La tercera característica vital que necesita saber es el comando diff, usado t o comparar o mostrar la diferencia entre las ramas, mostrar cambios entre el directorio de trabajo y el índice, cambios entre dos archivos en el disco y mucho más.

Por ejemplo, para mostrar la diferencia entre la rama maestra y la última rama, puede ejecutar el siguiente comando.

$ git diff master latest  Mostrar diferencia entre ramas  Mostrar diferencia entre ramas Mostrar diferencia entre ramas

Lea también. 10 mejores alternativas de Git para alojar proyectos de código abierto

Leave a comment

Your email address will not be published. Required fields are marked *