¿Qué es GitHub y por qué lo necesitas?
GitHub es la plataforma de alojamiento de código más popular del mundo, utilizada por millones de desarrolladores y miles de empresas. Mientras que Git es el sistema de control de versiones local que instalas en tu computadora, GitHub actúa como un servidor remoto donde puedes almacenar una copia de tu proyecto y acceder a él desde cualquier lugar del mundo.
Cuando trabajas en equipo, cada miembro puede tener una copia local del repositorio en su computadora, pero todos sincronizan sus cambios a través de GitHub. Esto permite que múltiples personas trabajen en el mismo proyecto simultáneamente sin pisarse los unos a los otros.
Creando tu cuenta en GitHub
El proceso de creación de cuenta es gratuito y bastante sencillo. Sigue estos pasos:
- Dirígete a github.com en tu navegador web preferido.
- Haz clic en el botón verde "Sign up" ubicado en la esquina superior derecha.
- Ingresa tu dirección de correo electrónico y haz clic en "Continue".
- Crea una contraseña segura. GitHub te indicará si cumple con los requisitos mínimos de seguridad.
- Elige un nombre de usuario único. Este nombre aparecerá en tus repositorios y será tu identidad en la plataforma, así que elige algo profesional y fácil de recordar.
- GitHub puede pedirte que completes un pequeño puzzle para verificar que no eres un robot.
- Selecciona tus preferencias de plan. El plan gratuito es perfecto para comenzar y ofrece todas las funcionalidades básicas que necesitas.
- Verifica tu correo electrónico haciendo clic en el enlace que GitHub te enviará.
Configurando Git para trabajar con GitHub
Antes de sincronizar repositorios, necesitas configurar Git en tu computadora para que sepa quién eres y pueda asociar tus cambios con tu cuenta de GitHub.
Configuración básica
Abre tu terminal o línea de comandos y ejecuta los siguientes comandos, reemplazando con tu información real:
git config --global user.name "Tu Nombre"
git config --global user.email "[email protected]"
Es fundamental que uses el mismo correo electrónico que registraste en GitHub. GitHub utiliza esta dirección de email para asociar tus commits con tu cuenta.
Verificando tu configuración
Puedes verificar que la configuración se guardó correctamente ejecutando:
git config --listEsto mostrará todas las configuraciones actuales de Git, incluyendo tu nombre de usuario y correo electrónico.
Creando tu primer repositorio en GitHub
Un repositorio es como una carpeta que contiene todos los archivos de tu proyecto junto con el historial de cambios. Para crear uno:
- Inicia sesión en tu cuenta de GitHub.
- Haz clic en el botón "+" ubicado en la esquina superior derecha y selecciona "New repository".
- Completa los siguientes campos:
- Repository name: Elige un nombre descriptivo para tu proyecto.
- Description: Una breve explicación de qué trata tu proyecto (opcional pero recomendado).
- Public/Private: Público permite que cualquiera vea tu código; Privado limita el acceso solo a quienes tú invites.
- Add a README file: Marca esta opción para crear automáticamente un archivo README en tu repositorio.
- Add .gitignore: Selecciona una plantilla según el lenguaje de programación que uses.
- Finalmente, haz clic en "Create repository".
Métodos para sincronizar repositorios
Existen principalmente tres formas de conectar tu repositorio local con GitHub:
1. Crear un repositorio desde cero y subirlo
Si ya tienes un proyecto local que deseas subir a GitHub:
cd ruta/de/tu/proyecto
git init
git add .
git commit -m "Primer commit"
git remote add origin https://github.com/tu-usuario/nombre-repositorio.git
git branch -M main
git push -u origin mainVeamos qué hace cada comando:
| Comando | Función |
|---|---|
| git init | Inicializa un repositorio Git local |
| git add . | Agrega todos los archivos al staging area |
| git commit | Guarda los cambios con un mensaje descriptivo |
| git remote add origin | Conecta tu repositorio local con el remoto |
| git push -u origin main | Sube tus cambios al repositorio remoto |
2. Clonar un repositorio existente
Si quieres trabajar en un proyecto que ya existe en GitHub:
git clone https://github.com/usuario/nombre-repositorio.gitEsto descargará todo el repositorio a tu computadora, incluyendo todo el historial de commits.
3. Vincular un repositorio local existente a GitHub
Si ya tienes un repositorio Git local y quieres subirlo a GitHub:
git remote add origin https://github.com/tu-usuario/nombre-repositorio.git
git branch -M main
git push -u origin mainSincronizando cambios: fetch, pull y push
Para trabajar eficientemente con repositorios remotos, necesitas entender tres comandos fundamentales:
| Comando | Función | Analogía |
|---|---|---|
| git fetch | Descarga cambios del remoto sin aplicarlos | Ver el índice de una biblioteca sin sacar libros |
| git pull | Descarga y aplica cambios del remoto | Sacar y leer los libros que otros dejaron |
| git push | Sube tus cambios locales al remoto | Devolver tus libros a la biblioteca |
El flujo de trabajo típico es:
- Haces cambios en tu código local.
- Ejecutas git add y git commit para guardarlos.
- Ejecutas git pull para asegurarte de tener los últimos cambios del equipo.
- Resuelves cualquier conflicto si es necesario.
- Ejecutas git push para subir tus cambios a GitHub.
Trabajando con tokens de acceso personal
Desde 2021, GitHub ya no permite autenticarse solo con contraseña desde la terminal. Necesitas usar un Personal Access Token (PAT).
Ver más: Cómo crear un token de acceso personal- En GitHub, ve a Settings (Configuración).
- En el menú lateral, selecciona Developer settings.
- Haz clic en Personal access tokens y luego en Generate new token.
- Asigna un nombre descriptivo al token.
- Selecciona los permisos que necesitas. Para uso básico, marca repo (acceso total a repositorios).
- Establece una fecha de expiración.
- Haz clic en Generate token.
- Importante: Copia el token inmediatamente y guárdalo en un lugar seguro. Solo se mostrará una vez.
Cuando Git te pida tu contraseña en la terminal, usa el token en lugar de tu contraseña de GitHub.
Estructura de un repositorio bien organizado
Un repositorio profesional en GitHub debe tener:
- README.md: Documentación del proyecto con descripción, instalación y uso.
- LICENSE: Archivo que define bajo qué licencia se distribuye tu código.
- .gitignore: Archivo que indica qué archivos o carpetas no deben subirse (como node_modules, carpetas de compilación, archivos con contraseñas).
- CONTRIBUTING.md: Guía para otros desarrolladores que quieran contribuir al proyecto.
Un proyecto bien documentado no solo ayuda a otros a entender tu código, sino que también demuestra profesionalismo y facilita la colaboración en equipo.
Resumen de comandos esenciales
| Comando | Descripción |
|---|---|
| git init | Inicializa un repositorio Git |
| git clone url | Clona un repositorio remoto |
| git remote -v | Muestra los repositorios remotos vinculados |
| git add archivo | Agrega archivos al staging area |
| git commit -m "mensaje" | Guarda los cambios localmente |
| git push | Sube cambios al servidor remoto |
| git pull | Descarga y fusiona cambios del remoto |
| git status | Muestra el estado actual del repositorio |
¿Cuál es la diferencia principal entre git fetch y git pull?
- A) fetch descarga cambios y los aplica automáticamente, pull solo los descarga
- B) fetch descarga cambios del remoto sin aplicarlos, pull descarga y aplica los cambios
- C) Son exactamente iguales, solo tienen nombres diferentes
- D) pull es para subir cambios, fetch es para bajarlos
Ahora que conoces los fundamentos para crear una cuenta en GitHub y sincronizar repositorios, estás listo para comenzar a colaborar en proyectos de equipo. En las siguientes lecciones aprenderás sobre ramas, pull requests y resolución de conflictos.