Git Pull
Última actualización
git pull actualiza tu rama actual con los últimos commits de su remoto. Internamente ejecuta git fetch para descargar los cambios y luego git merge para integrarlos, así que git pull = git fetch + git merge. Añade --rebase para reaplicar tus commits locales encima en lugar de crear un commit de fusión.
Prueba esto en el terminal playground: una shell real en tu navegador, sin nada que instalar.
Sintaxis
| Command | What it does |
|---|---|
git pull | Trae y fusiona el remoto de la rama actual |
git pull origin main | Trae una rama específica desde un remoto |
git pull --rebase | Trae y luego rebasea tus commits encima |
git pull --ff-only | Solo trae si puede avanzar rápido (sin fusión) |
git pull --no-rebase | Fuerza una fusión aunque rebase sea el valor por defecto |
Casos comunes
| Goal | Command |
|---|---|
| Obtener lo último en tu rama | git pull |
| Mantener el historial lineal | git pull --rebase |
| Abortar un pull que tuvo conflictos | git merge --abort |
| Descartar commits locales y coincidir con el remoto | git fetch luego git reset --hard origin/main |
Preguntas frecuentes sobre git pull
¿Qué hace realmente git pull?
Descarga los últimos commits del remoto para tu rama actual y los integra en tu rama local. Es la forma abreviada de dos comandos:
git fetch (descargar) seguido de git merge (integrar). Si lo configuras, el paso de fusión se convierte en un rebase.¿Cuál es la diferencia entre git pull y git fetch?
git fetch solo descarga los cambios remotos y actualiza tus ramas de seguimiento remoto, no toca tu rama de trabajo. git pull hace ese fetch y luego fusiona los cambios en tu rama actual. Usa fetch para revisar primero los cambios entrantes; usa pull para traerlos e integrarlos en un solo paso.¿Qué es git pull --rebase y cuándo debería usarlo?
git pull --rebase trae los commits remotos y luego reaplica tus commits locales encima de ellos, en lugar de crear un commit de fusión. Mantiene el historial lineal, algo que muchos equipos prefieren. Úsalo cuando tengas commits locales que aún no has enviado y quieras evitar un commit de fusión cada vez que haces pull.¿Cómo resuelvo conflictos después de un git pull?
Un pull puede provocar conflictos de fusión cuando los cambios locales y remotos se solapan. Abre los archivos en conflicto, resuelve las secciones marcadas, luego haz
git add sobre ellos y git commit (para una fusión) o git rebase --continue (para un pull con rebase). Si prefieres deshacerlo, ejecuta git merge --abort o git rebase --abort.¿Puedo practicar esto en línea?
Sí. Abre el terminal playground para ejecutar
git pull en una shell real en tu navegador, sin nada que instalar. El curso interactivo y gratuito de Git de Coddy también cubre el trabajo con remotos paso a paso.