logoImagina
iconCurso
Te recomendamos nuestro curso de Buenas Prácticas en Desarrollo de Software
Descubre el curso de Buenas Prácticas en Desarrollo de Software
Ir al curso

Introducción a Git y GitHub, cómo instalar y configurarlo

iconImage
Escrito por Equipo de Imagina
Actualizado el 20-02-2025
Duración: 15 min

Cuando trabajamos en desarrollo de software, Git y GitHub se han convertido en herramientas fundamentales para el control de versiones y el trabajo colaborativo en proyectos. En este tutorial introductorio, aprenderás los conceptos básicos de Git y cómo utilizar GitHub para gestionar tus proyectos de manera eficiente. Aquí es donde entra en juego Git, un sistema de control de versiones distribuido que ha revolucionado la manera en que los equipos colaboran en proyectos de software.

git y github

¿Qué es Git?

Git es un sistema de control de versiones distribuido que permite a los desarrolladores rastrear los cambios realizados en el código fuente a lo largo del tiempo. Git se ha convertido en una herramienta esencial en el desarrollo de software moderno debido a su capacidad para manejar proyectos de cualquier tamaño, desde pequeños scripts hasta grandes aplicaciones con miles de colaboradores.

El propósito principal de Git es gestionar la evolución del código de manera eficiente y segura. Cada vez que se realiza un cambio en un archivo, Git permite que esos cambios se registren en una "instantánea" del proyecto, conocida como un commit. Esta instantánea incluye un historial detallado de los cambios, quién los hizo y cuándo se realizaron. Esto no solo facilita la colaboración entre equipos, sino que también permite revertir fácilmente cualquier cambio en caso de errores.

CARASTERÍSTICAS DE GIT

Git se destaca por una serie de características que lo hacen único y poderoso:

  1. Distribuición descentralizada: A diferencia de otros sistemas de control de versiones, Git permite que cada desarrollador tenga una copia completa del repositorio en su máquina local. Esto significa que las operaciones comunes, como commits, branching y merging, se pueden realizar sin necesidad de acceso a la red.

  2. Ramas ligeras: Las ramas en Git son extremadamente ligeras y permiten a los desarrolladores trabajar en múltiples características o correcciones de manera independiente. Estas ramas se pueden fusionar fácilmente en la rama principal una vez que estén listas.

  3. Integridad de datos: Cada commit en Git está protegido por un algoritmo criptográfico (SHA-1), lo que garantiza que el historial del proyecto no pueda ser alterado sin que se detecte.

  4. Rendimiento superior: Git está diseñado para ser rápido. La mayoría de las operaciones, como crear un commit o cambiar de rama, se realizan en cuestión de segundos, incluso en proyectos grandes.

  5. Soporte para trabajo colaborativo: Git facilita la creación y gestión de ramas, lo que permite a los equipos trabajar en paralelo en diferentes partes de un proyecto sin interferir entre sí.

¿Qué es GitHub?

GitHub es una plataforma de desarrollo colaborativo que utiliza Git como su sistema de control de versiones subyacente. En otras palabras, GitHub actúa como un repositorio centralizado en la nube donde los desarrolladores pueden alojar, gestionar y colaborar en proyectos de software utilizando las capacidades de Git. GitHub no solo facilita el control de versiones, sino que también ofrece herramientas adicionales para la gestión de proyectos, como issues, pull requests y actions que automatizan flujos de trabajo.

Mientras que Git es una herramienta que se utiliza localmente para gestionar versiones de código, GitHub expande esta funcionalidad permitiendo que múltiples desarrolladores colaboren de manera remota. Por ejemplo, cuando un desarrollador hace un commit en su repositorio local, puede sincronizar esos cambios con el repositorio en GitHub, donde otros colaboradores pueden revisar, comentar y fusionar esos cambios en el proyecto principal.

CARACTERÍSTICAS DE GITHUB

GitHub es mucho más que un simple alojamiento de repositorios de Git. Ofrece una serie de características que lo convierten en una plataforma poderosa para la colaboración y gestión de proyectos de software:

  • Repositorios remotos públicos y privados: GitHub permite a los usuarios crear repositorios tanto públicos como privados. Los repositorios públicos son accesibles para cualquier persona, lo que fomenta el código abierto, mientras que los privados están restringidos a los colaboradores designados.

  • Pull Requests y revisiones de código: Una de las funciones más poderosas de GitHub es el sistema de pull requests, que permite a los desarrolladores proponer cambios en un proyecto. Estos cambios pueden ser revisados por otros miembros del equipo antes de ser fusionados en la rama principal, lo que garantiza la calidad del código.

  • Integración continua y acciones: Con GitHub Actions, los desarrolladores pueden automatizar flujos de trabajo, como pruebas automáticas, despliegues y otras tareas repetitivas, directamente desde el repositorio. Esto facilita la integración continua y entrega continua (CI/CD).

  • Gestión de proyectos: GitHub ofrece herramientas como issues y project boards que permiten a los equipos gestionar tareas, seguimiento de errores y organizar el trabajo en sprints o hitos. Esto lo convierte en una plataforma completa para la gestión de proyectos de software.

  • Colaboración en tiempo real: GitHub permite a múltiples desarrolladores trabajar en el mismo proyecto simultáneamente. Con características como branching y forking, los desarrolladores pueden trabajar en nuevas funcionalidades sin interferir con la rama principal del proyecto.

GitHub vs Git: Diferencias principales

Aunque Git y GitHub están estrechamente relacionados, es importante entender las diferencias entre ambos:

  • Alcance: Git es una herramienta de control de versiones que se utiliza localmente para gestionar cambios en el código. Por otro lado, GitHub es una plataforma en la nube que utiliza Git como base, pero ofrece una amplia gama de herramientas adicionales para la colaboración y gestión de proyectos.

  • Interfaz de usuario: Git es principalmente una herramienta de línea de comandos, lo que puede ser intimidante para los principiantes. En cambio, GitHub ofrece una interfaz gráfica de usuario amigable que facilita muchas de las operaciones comunes de Git, como commits, merges y creación de ramas.

  • Funcionalidades adicionales: Git es una herramienta poderosa pero limitada a la gestión de versiones. GitHub, en cambio, proporciona funcionalidades adicionales como la gestión de proyectos, automatización de tareas, y herramientas de revisión de código, lo que lo convierte en un entorno completo para el desarrollo colaborativo.

  • Uso: Mientras que Git puede ser utilizado en cualquier entorno de desarrollo local, GitHub requiere una conexión a Internet para acceder y sincronizar los repositorios alojados en la nube.
  • Colaboración: Git facilita la colaboración, ya que permite a múltiples usuarios trabajar en un mismo proyecto, gestionar revisiones de código y realizar comentarios en cambios específicos.

GitHub es una extensión natural de Git que facilita la colaboración en proyectos de software a través de una plataforma accesible y rica en funcionalidades. Es la elección preferida para muchos desarrolladores que buscan un entorno de desarrollo colaborativo eficiente y escalable.

¿Qué es un repositorio?

Un repositorio en Git es un espacio donde se almacenan todos los archivos y las versiones de un proyecto. Puede considerarse como una carpeta que contiene todos los archivos y el historial de cambios del proyecto. Los repositorios en GitHub son accesibles para otros colaboradores, lo que facilita la colaboración y el seguimiento de los cambios en el proyecto.

¿Cómo instalar Git?

A continuación, te mostraré cómo instalar Git en diferentes sistemas operativos:

WINDOWS

  1. Descarga el instalador de Git desde el sitio web oficial de Git.
  2. Ejecuta el archivo descargado y sigue las instrucciones del instalador.
  3. Acepta las opciones predeterminadas del instalador a menos que desees personalizar la configuración.
  4. Haz clic en "Finalizar" para completar la instalación.
  5. Verifica la instalación ejecutando el siguiente comando:
1git --version

LINUX

En la mayoría de las distribuciones de Linux, Git viene preinstalado. Si no es así, puedes instalar Git utilizando el administrador de paquetes de tu distribución.

1. Debian/Ubuntu, ejecutamos:

1sudo apt update 2sudo apt install git -y

2. Fedora, usamos:

1sudo dnf install git

3. Arch Linux, ejecutamos:

1sudo pacman -S git

Finalmente, podemos verificar que la instalación ha sido exitosa con: java script git --version

MacOS

  1. Abrir la terminal y ejecutar el siguiente comando para instalar Homebrew (si aún no está instalado):

    1/bin/bash - c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  2. Instalar Git con Homebrew:

1brew install git
  1. Verificar la instalación con el siguiente comando:
1git --version

Otra opción es instalar Git directamente desde la página oficial:

  1. Descarga el instalador de Git desde el sitio web oficial.
  2. Ejecuta el archivo descargado y sigue las instrucciones del instalador.
  3. Acepta las opciones predeterminadas del instalador a menos que desees personalizar la configuración.
  4. Haz clic en "Finalizar" para completar la instalación.

Configuración inicial de Git

Una vez que hayas instalado Git, necesitarás configurarlo con tus credenciales de GitHub para poder interactuar con tus repositorios. Sigue los siguientes pasos:

CONFIGURACIÓN DEL NOMBRE DE USUARIO Y CORREO ELECTRÓNICO

  1. Abre la terminal o el símbolo del sistema.
  2. Configura tu nombre de usuario de Git ejecutando el siguiente comando, reemplazando "TU_NOMBRE_DE_USUARIO" con tu nombre de usuario de GitHub:
1git config --global user.name "TU_NOMBRE_DE_USUARIO"
  1. Configura tu dirección de correo electrónico de Git ejecutando el siguiente comando, reemplazando "TU_CORREO_ELECTRÓNICO" con tu dirección de correo electrónico asociada a tu cuenta de GitHub:
1git config --global user.email "TU_CORREO_ELECTRÓNICO"
  1. Para verificar que los datos se guardaron correctamente, usamos:
1git config --global --list
  1. Ahora estás listo para comenzar a utilizar Git y GitHub en tu máquina local.

CONFIGURACIÓN DEL EDITOR POR DEFECTO

Algunas operaciones en Git requieren que se abra un editor de texto para redactar mensajes de confirmación o resolver conflictos de fusión. Por defecto, Git usa vim*m pero podemos cambiarlo a otro editor como *nano o VS Code.

nano

1git config --global core.editor "nano"

Visual Studio Code

1git config --global core.editor "code --wait"

Para verificar que editor está configurado se usa:

1git config --global core editor

GENERACIÓN DE LAS CLAVES SSHH Y CONEXIÓN CON GITHUB

Para interactuar con GitHub sin necesidad de ingresar credenciales constantemente, es recomendable configurar una clave SSH. Esto permite que GitHub autentique nuestra identidad de forma segura.

  1. Generar una clave SSH en la terminal con el siguiente comando:
1ssh-keygen -t rsa -b 4096 -C "TU_CORREO_-ELECTRÓNICO"

Nos pedirá una ubicación para guardar la clave (presionamos Enter para aceptar la predeterminada) y una frase de seguridad opcional.

  1. Iniciar el agente SSH y agregar la clave generada:
1eval "$(ssh-agent -s)" 2ssh-add ~/.ssh/id_rsa
  1. Copiar la clave pública con:
1cat ~/.ssh/id_rsa.pub
  1. Añadir la clave a GitHub:

    • Ir a GitHub → Configuración → SSH and GPG keys.
    • Hacer clic en New SSH key.
    • Pegar la clave pública copiada y guardarla.
  2. Probar la conexión con GitHub ejecutando:

1ssh -T git@github.com
Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *

Conceptos básicos de Git

Para trabajar de manera efectiva con Git, es fundamental comprender sus conceptos clave. Git gestiona versiones de código a través de repositorios, permite registrar cambios mediante commits y facilita la organización del desarrollo con el uso de ramas (branches).

Repositorio y su estructura

Un repositorio en Git es el espacio donde se almacena un proyecto y su historial de cambios. Puede ser local (almacenado en nuestra máquina) o remoto (hospedado en plataformas como GitHub). Dentro de un repositorio, encontramos varios elementos esenciales:

  • .git/: Carpeta oculta que contiene toda la información necesaria para que Git controle el proyecto.
  • Archivos de código fuente: Contienen el código del proyecto en diferentes versiones.
  • .gitignore: Archivo en el que se definen los archivos o carpetas que no deben ser rastreados por Git.
  • README.md: Archivo que generalmente contiene documentación del proyecto.

Para crear un repositorio Git en un directorio de trabajo, usamos:

1git init

Esto genera la carpeta .git/, que almacena la configuración y el historial del repositorio.

Commits e historial de cambios

Cada vez que realizamos un cambio en el código, podemos guardarlo en Git mediante un commit. Un commit actúa como una instantánea del estado del proyecto en ese momento. Para registrar un cambio, seguimos estos pasos:

  1. Añadir los archivos modificados al área de preparación:
1git add
  1. Confirmar los cambios con un mensaje descriptivo:
1git commit -m "Descripción del cambio"
  1. Verificar el historial de cambios:
1git log

Este comando muestra una lista detallada de todos los commits, incluyendo el autor, la fecha y el mensaje de cada uno.

Si queremos ver un historial más compacto, podemos usar:

1git log --oneline --graph --all

Ramas (branches) y su manejo

Las ramas (branches) en Git permiten trabajar en diferentes líneas de desarrollo sin afectar el código principal. Esto facilita la implementación de nuevas funcionalidades o correcciones sin alterar la versión estable del proyecto.

Los comandos esenciales para manejar ramas incluyen:

  • Crear una nueva rama:
1git branch nombre_rama
  • Listar todas las ramas:
1git branch
  • Cambiar a una rama específica:
1git checkout nombre_rama

En versiones más recientes de Git, el siguiente comando es equivalente:

1git switch nombre_rama
  • Fusionar una rama con la rama principal (main o master):
1git checkout main 2git merge nombre_rama
  • Eliminar una rama después de fusionarla:
1git branch -d nombre_rama

El uso eficiente de ramas mejora la organización del proyecto y permite que múltiples desarrolladores trabajen en paralelo sin interferencias.

Con estos conceptos básicos dominados, podemos empezar a trabajar con Git de manera efectiva, gestionando el código de manera estructurada y colaborativa.

Configuración inicial de GitHub

GitHub es una plataforma que facilita la colaboración en proyectos de software mediante el uso de Git. Permite almacenar código en la nube, gestionar repositorios y trabajar con otros desarrolladores de manera eficiente. A continuación, veremos cómo empezar a utilizar GitHub, desde la creación de una cuenta hasta la colaboración en proyectos de terceros.

CREAR UNA CUENTA EN GITHUB

Para comenzar a utilizar GitHub, primero debemos crear una cuenta gratuita siguiendo estos pasos:

  1. Ir al sitio web oficial de GitHub: https://github.com.
  2. Hacer clic en "Sign up" (Registrarse).
  3. Introducir un nombre de usuario, correo electrónico y contraseña.
  4. Confirmar la cuenta a través del correo electrónico enviado por GitHub.
  5. Seleccionar las preferencias iniciales (opcional) y completar el registro.

Una vez creada la cuenta, podremos acceder a todas las funcionalidades de GitHub y comenzar a gestionar nuestros proyectos.

CREAR UN REPOSITORIO EN GITHUB

Los repositorios son el núcleo de GitHub, ya que almacenan los archivos de un proyecto y su historial de cambios. Para crear un repositorio nuevo:

  1. Iniciar sesión en GitHub.
  2. Hacer clic en el botón "+" (arriba a la derecha) y seleccionar "New repository".
  3. Configurar el repositorio:
    • Asignar un nombre al repositorio.
    • Añadir una descripción opcional.
    • Elegir entre repositorio público o privado.
    • Seleccionar si queremos incluir un archivo README, una licencia o un archivo .gitignore.
  4. Hacer clic en "Create repository".

Una vez creado el repositorio, GitHub nos proporcionará una URL del repositorio remoto, que utilizaremos para conectarlo con nuestro entorno local.

Conceptos básicos de GitHub

Si ya tenemos un proyecto en nuestra máquina y queremos subirlo a GitHub, debemos seguir estos pasos:

  1. Abrir la terminal y navegar hasta la carpeta del proyecto:
1 cd /ruta/del/proyecto
  1. Inicializar un repositorio Git (si no lo hemos hecho antes):
1git init
  1. Añadir todos los archivos al área de preparación:
1git add .
  1. Hacer el primer commit:
1git commit -m "Primer commit - Subida del proyecto a GitHub"
  1. Vincular el repositorio local con GitHub usando la URL proporcionada:
1git remote add origin https://github.com/usuario/nombre-repositorio.git
  1. Subir el código a GitHub:
1git push -u origin main

Ahora, nuestro proyecto estará disponible en GitHub y podremos compartirlo o colaborar con otros desarrolladores.

Contribuir a proyectos de terceros

GitHub permite contribuir a proyectos de código abierto mediante el uso de forks y pull requests. Para participar en un proyecto de terceros, seguimos estos pasos:

  1. Buscar un repositorio de interés en GitHub.

  2. Hacer un "fork" del repositorio para crear una copia en nuestra cuenta.
  3. Clonar el repositorio a nuestra máquina:
1git clone https://github.com/tu-usuario/nombre-repositorio.git
  1. Crear una nueva rama para los cambios:
1git checkout -b nueva-funcionalidad
  1. Realizar modificaciones y hacer commits:
1git add . 2git commit -m "Añadida nueva funcionalidad"
  1. Subir los cambios a nuestro repositorio en GitHub:
1git push origin nueva-funcionalidad
  1. Crear un pull request desde GitHub para solicitar la integración de nuestros cambios en el repositorio original.

Si nuestra contribución es aceptada, el código será fusionado y formará parte del proyecto principal.

Con estos conocimientos básicos, podremos comenzar a usar GitHub de manera eficiente, ya sea para alojar nuestros propios proyectos o colaborar con otros desarrolladores en proyectos existentes.

Aprender a Usar Git y Github

Dominar Git y GitHub es esencial para cualquier desarrollador que quiera gestionar su código de manera eficiente y colaborar en proyectos de forma profesional. A lo largo de este tutorial, hemos explorado los conceptos fundamentales, desde la instalación hasta el manejo de ramas y la contribución a proyectos. Aprendiste qué es Git, quién lo creó y para qué sirve. Descubrimos las ventajas de usar Git, así como la funcionalidad adicional que GitHub proporciona para facilitar el trabajo colaborativo.

Además, cubrimos los pasos necesarios para instalar Git en Windows, Linux y macOS, y cómo configurar Git con tus credenciales de GitHub.

¡Estás listo para comenzar tu viaje en el mundo del control de versiones y la colaboración con Git y GitHub! Este tutorial es solo el comienzo, y te animo a profundizar en estos temas y explorar todas las capacidades que ofrecen estas herramientas. ¡Disfruta aprendiendo y desarrollando tus proyectos con Git y GitHub!

Si deseas profundizar más y aplicar estos conocimientos en proyectos reales, te invitamos a explorar nuestros cursos de Git y GitHub, diseñados para guiarte paso a paso y convertirte en un experto en control de versiones. Aprenderás desde los fundamentos hasta prácticas avanzadas utilizadas por equipos de desarrollo en todo el mundo.Empieza hoy y lleva tu fluoj de trabajo al siguiente nivel con los siguientes cursos:

Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *
Tutoriales relacionados
¿Qué es FUNDAE? Formación Bonificada para Empresas
Descubre qué es FUNDAE y cómo los cursos bonificados pueden ser una inversión estratégica para el crecimiento y éxito a largo plazo de tu empresa.
¿Qué es OSINT y Cómo se utiliza?
Descubre qué es OSINT y cómo se usa en inteligencia y seguridad. Conoce las mejores herramientas OSINT para recopilar y analizar información abierta.
Top 7 Formaciones en Big Data Bonificadas por FUNDAE
Desarrollo Profesional en Big Data: Cómo FUNDAE Facilita la Capacitación en Análisis de Datos Avanzados
¿Cómo Bonificar un Curso con FUNDAE? Guía Completa
Aprende a bonificar tu curso con FUNDAE y maximiza tu formación. Descubre cómo obtener beneficios con el mejor tutorial en línea. ¡Comienza hoy!
Tabla de contenido
¿Qué es Git?
¿Qué es GitHub?
GitHub vs Git: Diferencias principales
¿Qué es un repositorio?
¿Cómo instalar Git?
WINDOWS
LINUX
MacOS
Configuración inicial de Git
Conceptos básicos de Git
Repositorio y su estructura
Commits e historial de cambios
Ramas (branches) y su manejo
Configuración inicial de GitHub
Conceptos básicos de GitHub
Contribuir a proyectos de terceros
Aprender a Usar Git y Github
Descubre la formación a tu medida
Rellena el formulario para obtener más información sobre los cursos.
Tamaño de la empresa *
Términos y condiciones *