Primeros pasos con Git: Inicialización y clonación de repositorios

Aprende cuándo usar git init o git clone, y luego verifica remotos, ramas, identidad y archivos ignorados antes de tu primer commit.

Primeros pasos con Git: Inicialización y clonación de repositorios

Inicializar y clonar repositorios son las dos formas básicas de empezar a trabajar con Git. O conviertes una carpeta existente en un repositorio Git, o copias un repositorio existente para poder trabajar con sus archivos e historial.

Estos comandos parecen simples, pero las decisiones que tomas al inicio afectan a los remotos, las ramas, los archivos ignorados y los flujos de trabajo del equipo. Una configuración limpia evita confusiones más adelante.

Qué contiene un repositorio Git

Un repositorio Git es una carpeta de proyecto con un directorio oculto .git dentro. Ese directorio .git almacena el historial de commits, las referencias a ramas, la información de remotos, la configuración y la base de datos interna de objetos de Git.

Normalmente no editas los archivos .git a mano. Usas comandos de Git, y Git actualiza esos datos internos por ti.

Para comprobar si una carpeta ya es un repositorio, ejecuta:

git status

Si Git dice que la carpeta no es un repositorio, puedes inicializar uno. Si muestra una rama, archivos modificados o un árbol de trabajo limpio, Git ya está rastreando esa carpeta.

Ayuda entender tres áreas comunes:

  • Árbol de trabajo: los archivos que puedes ver y editar.
  • Área de preparación: los cambios seleccionados para el próximo commit.
  • Historial del repositorio: los commits que Git ya ha registrado.

Cuando inicializas o clonas un repositorio, Git configura esas piezas para que puedas empezar a hacer commits.

Inicializar un nuevo repositorio

Usa git init cuando tienes una carpeta de proyecto local que aún no está rastreada por Git.

Crea una carpeta e inicialízala:

mkdir my-app
cd my-app
git init

Git crea el directorio oculto .git. Ahora puedes agregar archivos y hacer tu primer commit:

echo "# My App" > README.md
git add README.md
git commit -m "Agregar README"

Si tu rama por defecto debe llamarse main, puedes configurarlo globalmente antes de crear nuevos repositorios:

git config --global init.defaultBranch main

O renombrar la rama actual después de la inicialización:

git branch -M main

Para un proyecto real, crea un .gitignore antes de tu primer commit amplio. Esto evita que las carpetas de dependencias, la salida de compilación, los registros y los secretos locales entren en el historial:

node_modules/
dist/
.env
*.log

Una vez que un archivo está comprometido, agregarlo a .gitignore más tarde no lo elimina del historial. Por eso las reglas de ignorado tempranas son importantes.

Si planeas publicar el repositorio en un servicio de alojamiento, crea primero el repositorio remoto vacío allí, luego conéctalo:

git remote add origin [email protected]:example/my-app.git
git push -u origin main

La opción -u establece el seguimiento ascendente. Después de eso, git push y git pull simples saben qué rama remota usar.

Clonar un repositorio existente

Usa git clone cuando un repositorio ya existe en otro lugar. La clonación copia los archivos del proyecto, el historial y la configuración remota.

El comando básico es:

git clone [email protected]:example/my-app.git

Git crea una carpeta con el nombre del repositorio. Para elegir un nombre de carpeta local diferente, agrégalo al final:

git clone [email protected]:example/my-app.git worktree-app

Después de clonar, muévete a la carpeta e inspecciónala:

cd worktree-app
git status
git remote -v
git branch

Por defecto, el remoto suele llamarse origin. Ese nombre es convencional, no mágico. Apunta a la URL que Git usará para las descargas y subidas.

Puedes ver URLs de clonación HTTPS o SSH. HTTPS es fácil de empezar, especialmente para repositorios públicos. SSH es común para el desarrollo diario porque usa claves y evita solicitudes repetidas de contraseña cuando está configurado correctamente.

Para un repositorio grande, puedes usar un clon superficial:

git clone --depth 1 https://example.com/repo.git

Eso descarga solo el historial reciente. Es útil para trabajos de CI o inspección rápida, pero puede limitar comandos que necesitan commits antiguos, etiquetas o historial completo. Para el desarrollo normal, un clon completo suele ser mejor.

Si el repositorio usa submódulos, clona con:

git clone --recurse-submodules [email protected]:example/platform.git

O inicialízalos después de clonar:

git submodule update --init --recursive

Los submódulos agregan otra capa de gestión de repositorios, así que lee la documentación de configuración del proyecto antes de hacer cambios.

Comprobaciones comunes después de la configuración

Después de inicializar o clonar, ejecuta algunas comprobaciones antes de empezar a codificar. Ayudan a detectar configuraciones incorrectas temprano.

Verifica tu identidad:

git config user.name
git config user.email

Si este es un repositorio de trabajo, asegúrate de que el correo electrónico coincida con tu cuenta de empresa. Puedes configurarlo localmente:

git config --local user.email "[email protected]"

Verifica los remotos:

git remote -v

Asegúrate de que las URLs de fetch y push apunten al repositorio esperado. Subir accidentalmente a un fork o espejo personal puede hacer perder tiempo.

Verifica la rama actual:

git branch --show-current

Si clonaste un repositorio, lee el README o la guía de contribución antes de crear una rama. Muchos equipos esperan nombres de rama como feature/ticket-123-short-description o fix/login-timeout.

Antes de tu primer commit, verifica los archivos ignorados:

git status --ignored

Esta es una forma rápida de confirmar que los artefactos de compilación y los archivos secretos locales no están a punto de ser comprometidos.

Cuándo pedir ayuda

Pide ayuda a un compañero de equipo o al mantenedor del repositorio si no estás seguro de qué URL remota usar, si debes clonar un fork o el repositorio principal, o cómo se deben manejar los submódulos.

También debes detenerte si inicializaste Git en el directorio incorrecto. Por ejemplo, ejecutar git init en tu carpeta de inicio puede hacer que Git vea miles de archivos no relacionados. No empieces a eliminar cosas al azar. Confirma dónde se creó .git y elimina solo los metadatos del repositorio equivocado si estás seguro de que no contiene historial necesario.

Empezar con Git se trata principalmente de hábitos limpios. Usa git init para nuevos proyectos locales, git clone para repositorios existentes, y verifica tu rama, remoto, identidad y archivos ignorados antes de comenzar el trabajo serio.