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.