paint-brush
GIT: Explicado en 5 Niveles de Dificultadpor@mcsee
5,297 lecturas
5,297 lecturas

GIT: Explicado en 5 Niveles de Dificultad

por Maximiliano Contieri4m2023/02/19
Read on Terminal Reader

Demasiado Largo; Para Leer

GIT es un sistema de control de versiones distribuido que permite a los desarrolladores de software gestionar y realizar un seguimiento de los cambios realizados en su código fuente. Permite la colaboración simultánea de múltiples desarrolladores en la misma base de código, al tiempo que mantiene un registro completo de todos los cambios realizados por cada desarrollador individual. También es de código abierto, lo que significa que cualquiera puede usarlo de forma gratuita.
featured image - GIT: Explicado en 5 Niveles de Dificultad
Maximiliano Contieri HackerNoon profile picture

Conoce y comprende esta fantástica herramienta.


TL;DR: ¿Qué es GIT y por qué debería aprender a usarlo?


Explicaré GIT en cinco niveles a diferentes audiencias.


Muchos desarrolladores junior me preguntan qué lenguaje o marco elegante es mejor para comenzar su carrera.


Mi respuesta es siempre la misma:

Los lenguajes y los marcos van y vienen. Estudia inglés y estudia GIT.

Niño

GIT es como un cuaderno mágico donde puedes anotar todos los cambios que realizas en tus proyectos informáticos.


¿Sabes cuando haces un dibujo y no puedes borrarlo o hacerlo como antes?


A veces, cuando trabajamos en grandes proyectos, también queremos volver atrás y ver las versiones anteriores de nuestras imágenes.


Puede conservar todas las diferentes versiones de sus imágenes y volver atrás y mirarlas si lo desea.


Puede dibujar en la misma imagen con sus amigos sin experimentar confusión con los cambios.


Es como una cápsula del tiempo para tu trabajo.

Adolescente

GIT es una herramienta para realizar un seguimiento de los cambios en los archivos de su computadora, especialmente cuando se trabaja con otras personas en un proyecto.


Los amigos pueden trabajar en los mismos archivos al mismo tiempo, sin sobrescribir los cambios de los demás por accidente.


GIT también le permite guardar diferentes versiones de su trabajo, por lo que puede volver a una versión anterior si lo necesita.

Estudiante universitario

GIT es un sistema de control de versiones distribuido.


Permite a los desarrolladores trabajar en la misma base de código simultáneamente, sin interferir con los cambios de los demás.


Utiliza un algoritmo único para realizar un seguimiento de los cambios en los archivos.


GIT mantiene un historial de todos los cambios realizados en el código base.


Los desarrolladores pueden colaborar en el mismo proyecto, manteniendo la capacidad de trabajar de forma independiente.


Si necesita volver a una versión anterior de su trabajo, esta herramienta facilita hacerlo con el código que escribió.


Los desarrolladores de software usan ampliamente GIT y lo consideran un estándar de la industria.


También es de código abierto, lo que significa que cualquiera puede usarlo de forma gratuita.

Estudiante graduado

GIT permite a los desarrolladores realizar un seguimiento de los cambios realizados en el código fuente a lo largo del tiempo.


Esta herramienta permite la colaboración simultánea de múltiples desarrolladores en la misma base de código, al tiempo que mantiene un registro completo de todos los cambios realizados por cada desarrollador individual.


GIT permite una fácil colaboración, reversión de cambios y administración de diferentes versiones de código.


Algunas características clave de GIT incluyen la capacidad de crear ramas y fusionarlas, ver el historial de cambios realizados en una base de código y manejar conflictos.


Los conflictos surgen cuando varias personas trabajan en el mismo código.

Experto

GIT es un sistema de control de versiones distribuido que permite a los desarrolladores de software administrar y realizar un seguimiento de los cambios realizados en su código fuente.


Se basa en un modelo de datos que consta de un gráfico acíclico dirigido de confirmaciones, donde cada confirmación representa una instantánea del código base en un momento específico.


GIT permite que existan múltiples ramas en una base de código, con la capacidad de fusionar fácilmente los cambios de una rama a otra.


Utiliza un algoritmo de fusión de tres vías, lo que le permite manejar de manera eficiente los conflictos que pueden surgir al fusionar cambios de múltiples ramas.


GIT permite realizar cambios antes de confirmar.


Puede usar ganchos para automatizar tareas y manejar archivos binarios grandes usando GIT LFS .


Con GIT, es posible generar y hacer la transición entre numerosos repositorios locales y remotos.

GIT tiene un ecosistema de complementos robusto y varias herramientas de terceros.


Algunas herramientas son clientes de GUI de GIT , plataformas de alojamiento de GIT y herramientas de automatización de flujo de trabajo de GIT, que permiten a los equipos usar GIT de varias maneras para satisfacer sus necesidades.


El algoritmo de combinación de tres vías utilizado por GIT compara la versión del ancestro común de un archivo con la versión en la rama actual y la versión en la rama que se está fusionando.


Esto permite que GIT detecte y maneje los conflictos que pueden surgir al fusionar cambios realizados en diferentes ramas.


El proceso de una combinación de tres vías funciona de la siguiente manera:


  1. GIT primero identifica la versión antecesora común del archivo que se fusiona. Esta es la versión del archivo que existía antes de que se realizaran cambios en las ramas actual y de destino.


  2. GIT compara la versión anterior del archivo con la versión en la rama actual. Luego registra todos los cambios realizados en la rama actual en una versión especial "actual" del archivo.


  3. GIT compara la versión anterior del archivo con la versión en la rama de destino y registra todos los cambios realizados en la rama de destino en una versión especial de "objetivo" del archivo.


  4. GIT toma la versión anterior común del archivo y le aplica los cambios registrados en las versiones actual y de destino. Si surge algún conflicto (por ejemplo, si se cambiaron las mismas líneas de código en las ramas actual y de destino), GIT marcará estos conflictos en la versión final del archivo y pedirá al usuario que los resuelva manualmente.


Mediante el uso de este algoritmo, GIT puede administrar de manera eficiente los conflictos de fusión y garantizar que la última versión del archivo represente una integración coherente y consistente de los cambios realizados en ambas ramas.