Aquesta és una revisió antiga del document
git FETCH
<markdown> La respuesta corta es: no recibirás una notificación de sistema (como un mensaje emergente o un aviso sonoro), pero la terminal te dará información visual inmediata si hay algo nuevo.
`git fetch` es como asomarse a la ventana para ver si ha llegado el correo: descargas la información sobre lo que hay en el servidor, pero no «abres las cartas» (no mezclas los cambios con tu código todavía).
—
- # 1. Qué verás en la terminal al ejecutar `git fetch`
Si hay cambios en el servidor, la salida de la terminal se verá algo así:
```bash remote: Enumerating objects: 5, done. remote: Counting objects: 100% (5/5), done. … From github.com:usuario/proyecto
a1b2c3d..e4f5g6h main -> origin/main
* [new branch] feature-xyz → origin/feature-xyz
```
- ¿Cómo interpretar esto?
- Si hay salida parecida a la de arriba: Significa que se han descargado nuevos commits, ramas o etiquetas.
- Si no aparece nada después del comando: Significa que tu repositorio local ya está al día con el servidor.
—
- # 2. La «Notificación» más clara: `git status`
Una vez que has hecho el `fetch`, si ejecutas `git status`, Git comparará tu rama local con la que acaba de descargar del servidor y te dará un mensaje muy directo:
«Your branch is behind 'origin/main' by 3 commits, and can be fast-forwarded.»
Esta es, funcionalmente, tu notificación. Te está diciendo: *«Oye, el servidor tiene 3 cosas que tú no tienes»*.
—
- # 3. Cómo ver los cambios antes de fusionar
Lo mejor de usar `fetch` es que puedes «cotillear» qué han hecho los demás sin riesgo de romper tu trabajo actual. Aquí tienes un par de comandos útiles:
- Ver los mensajes de commit nuevos:
Si quieres saber de qué tratan esos commits que faltan:
```bash git log HEAD..origin/main –oneline
```
- (Esto te muestra la lista de commits que están en el servidor pero no en tu rama local).*
- Ver la diferencia de código real:
Si quieres ver qué líneas exactas han cambiado:
```bash git diff HEAD..origin/main
```
—
- # Resumen de flujo recomendado
Si quieres saber si hay cambios sin «ensuciar» tu rama todavía, el proceso ideal es:
1. `git fetch`: Descarga la info. 2. `git status`: Comprueba si estás por detrás del servidor. 3. `git log ..origin/main`: Mira qué han hecho. 4. `git merge` (o `git pull`): Si te gusta lo que ves, tráetelo a tu rama.
</code>