Introducción a Github

Hoy en día el desarrollo de software se lleva a cabo de forma distributiva. Este artículo se centra en una de esas tecnologías que admite el desarrollo de software distribuido, es decir, GIT y su aplicación a través de GitHub . 

¿De qué se trata GIT?  

  • Git es un sistema de control de versiones distribuido gratuito y de código abierto diseñado para manejar todo, desde proyectos pequeños hasta proyectos muy grandes, con rapidez y eficiencia.
  • Git se basa en el desarrollo distribuido de software donde más de un desarrollador puede tener acceso al código fuente de una aplicación específica y puede modificar los cambios que pueden ver otros desarrolladores.
  • Inicialmente diseñado y desarrollado por Linus Torvalds para el desarrollo del kernel de Linux en 2005.
  • Cada directorio de trabajo de git es un repositorio completo con historial completo y capacidades de seguimiento de versiones completas, independientemente del acceso a la red o un servidor central.
  • Git permite que un equipo de personas trabajen juntas , todas usando los mismos archivos. Y ayuda al equipo a lidiar con la confusión que suele ocurrir cuando varias personas están editando los mismos archivos .

¿Por qué utilizar el software de control de versiones?

  • El software de control de versiones permite al usuario tener «versiones» de un proyecto, que muestran los cambios que se realizaron en el código a lo largo del tiempo, y permite al usuario retroceder si es necesario y deshacer esos cambios.
  • Esta capacidad por sí sola, de poder comparar dos versiones o revertir cambios , lo hace bastante invaluable cuando se trabaja en proyectos más grandes.
  • En un sistema de control de versiones, los cambios se guardarían justo a tiempo : un archivo de parche que podría aplicarse a una versión para que sea igual a la siguiente.
  • Todas las versiones se almacenan en un servidor central , y los desarrolladores individuales verifican y cargan los cambios nuevamente en este servidor.

 Características de Git

A. Fuerte apoyo al desarrollo no lineal 

  • Git admite ramificaciones y fusiones rápidas e incluye herramientas específicas para visualizar y navegar por un historial de desarrollo no lineal.
  • Una suposición importante en Git es que un cambio se combinará con más frecuencia de lo que se escribe.
  • Las ramas en Git son muy ligeras .

B. Desarrollo distribuido 

  • Git proporciona a cada desarrollador una copia local de todo el historial de desarrollo y los cambios se copian de un repositorio a otro.
  • Los cambios se pueden fusionar de la misma manera que una sucursal desarrollada localmente de manera muy eficiente y efectiva.

C. Compatibilidad con sistemas/protocolos existentes 

D. Manejo eficiente de grandes proyectos 

  •  Git es muy rápido y escalable en comparación con otros sistemas de control de versiones.
  • La obtención de energía de un repositorio local es mucho más rápida que la que es posible con un servidor remoto .

E. Garantía de datos 

  • El historial de Git se almacena de tal manera que la ID de una versión en particular depende del historial de desarrollo completo que condujo a esa confirmación.
  • Una vez publicadas, no es posible cambiar las versiones anteriores sin que se noten.

F. Recolección automática de basura 

  • Git realiza automáticamente la  recolección de basura  cuando se han creado suficientes objetos sueltos en el repositorio.
  • La recolección de basura se puede llamar explícitamente usando git gc –prune .

G. Empaquetado explícito periódico de objetos

  •  Git almacena cada objeto recién creado como un archivo separado. Utiliza  paquetes que almacenan una gran cantidad de objetos en un solo archivo (o flujo de bytes de red) llamado archivo de paquete, con compresión  delta entre ellos.
  • Se crea un archivo de índice correspondiente para cada archivo de paquete, especificando el desplazamiento de cada objeto en el archivo de paquete.
  • El proceso de empaquetado puede ser muy costoso computacionalmente.
  • Git permite aplazar la costosa operación del paquete hasta más tarde, cuando el tiempo no importa.
  • Git realiza el reempaquetado periódico automáticamente, pero el reempaquetado manual se puede realizar con el comando git gc.

¿Cómo funciona GIT?

  1. Un repositorio Git es un almacén de objetos clave-valor donde todos los objetos están indexados por su valor hash SHA-1.
  2. Todas las confirmaciones, archivos, etiquetas y Nodes del árbol del sistema de archivos son diferentes tipos de objetos que viven en este repositorio.
  3. Un repositorio de Git es una gran tabla hash que no prevé colisiones de hash .
  4. Git funciona específicamente tomando » instantáneas» de archivos

¿De qué se trata GitHub?

Github es una plataforma en línea donde podemos compartir nuestros códigos (o proyectos) en línea sin problemas. Github es el lugar donde alojamos nuestro repositorio git local en línea. básicamente te permite trabajar en colaboración dentro de un grupo de personas. Alberga todas las características de Git y también tiene las suyas propias. 

En palabras simples, Github podría considerarse como una red social creada para los desarrolladores donde comparten su trabajo. puede ser cualquier proyecto relacionado con el desarrollo de sitios web o cualquier diseño de sitio web, o algunos sistemas operativos como Android o Linux, etc. 

Github es propiedad de Microsoft, brinda acceso a repositorios públicos (gratuitos) y privados (pagos). Permite un repositorio gratuito para alojar archivos de hasta 100 mb y un tamaño total de 2 GB.

Veamos cómo alojar un repositorio local en Github, desde el principio (creando una cuenta de github).

A. Crear una cuenta de GitHub

Paso 1: Vaya a github.com e ingrese las credenciales de usuario requeridas solicitadas en el sitio y luego haga clic en el botón Registrarse en GitHub.

2

Paso 2: elige el plan que mejor se adapte a ti. Los siguientes planes están disponibles como se muestra en los siguientes medios como se muestra: 

3

Paso 3: luego haga clic en Finalizar registro. 

La cuenta ha sido creada. El usuario es redirigido automáticamente a su Tablero. 

4

B. Creando un nuevo Repositorio 

  • Inicie sesión en su cuenta de Github
  • En el tablero, haga clic en el botón verde que inicia Nuevo repositorio.
  • Asegúrese de verificar la cuenta de Github ingresando al correo que se proporcionó al crear la cuenta.
  • Una vez realizada la verificación, aparece la siguiente pantalla

C. Comience dando un nombre de repositorio, una descripción (opcional) y seleccione el modo de visibilidad y accesibilidad para el repositorio. 

D. Haga clic en Crear repositorio 

E. El repositorio (en este caso ITE-304 es el repositorio) ya está creado. El repositorio se puede crear de la siguiente manera:

6

Subir repositorio existente a GitHub 

  • El sistema debe tener instalado git si no instala git . Asegúrese de elegir la opción Ejecutar git desde el símbolo del sistema de Windows durante la instalación. De lo contrario, abra git bash en lugar del paso 2.
  • Abra Terminal (para usuarios de Mac) o el símbolo del sistema (para usuarios de Windows y Linux).
  • Cambie el directorio de trabajo actual a su proyecto local
  • Inicialice el directorio local como un repositorio git de diferentes maneras, como se describe en la imagen.
git init 
  • Se crea una nueva carpeta .git en el directorio que está oculto de forma predeterminada .
  • Agregue los archivos en su nuevo repositorio local. Esto los prepara para la primera confirmación.
git add .
#Adds the files in the local repository and stages them for commit. To unstage a file, use 
git reset HEAD YOUR_FILE 

Confirme los archivos que ha almacenado en su repositorio local.

git commit -m 'First commit'
# Commits the tracked changes and prepares them to be pushed to a remote repository. 
  To remove this commit and modify the file, use
git reset --soft HEAD~1
  And commit and add the file again.     

En la parte superior de la página de configuración rápida del repositorio de GitHub, haga clic en el icono que se muestra y copie la URL del repositorio remoto. 

7

En el símbolo del sistema, agregue la URL del repositorio remoto  donde se enviará su repositorio local.

git remote add origin remote repository URL
 # Connects to the remote repository 
git remote -v
 # Verifies the new remote URL 

Empuje los cambios en su repositorio local a GitHub .

git push origin master
# Pushes the changes in your local repository up to the remote repository you specified as the origin.    

Y aquí tienes…  

8

Puede descargar los cambios del repositorio remoto al repositorio local usando el comando:

git pull

Comandos Git  

Empresas y Proyectos Utilizando GIT  

  • Las empresas de trabajo reputadas y soñadas de todos los geeks como Microsoft, Google, Facebook, Twitter, LinkedIn y Netflix hacen uso de GIT.
  • Los proyectos de código abierto como Ruby On Rails, jQuery, Perl, Debian, Linux Kernel y muchos más utilizan git.

Este artículo es una contribución de Mudit Maheshwari.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *