50% OFF Plus
--:--:--
¡Obtener!

Push y pull

Intermedio
VSCode
VSCode
Actualizado: 16/07/2025

¡Desbloquea el curso de VSCode completo!

IA
Ejercicios
Certificado
Entrar

Mira la lección en vídeo

Accede al vídeo completo de esta lección y a más contenido exclusivo con el Plan Plus.

Desbloquear Plan Plus

Sincronizar cambios con repositorios remotos

La sincronización entre tu repositorio local y un repositorio remoto es fundamental para el trabajo colaborativo y la seguridad de tu código. Visual Studio Code integra estas operaciones de forma intuitiva, permitiendo mantener ambos repositorios actualizados con facilidad.

Conectar con un repositorio remoto

Antes de sincronizar cambios, necesitas establecer la conexión entre tu repositorio local y GitHub. VS Code ofrece dos enfoques principales para esta configuración inicial.

Si tu proyecto aún no está en GitHub, puedes usar la función "Publish to GitHub" directamente desde VS Code. Esta opción aparece en la vista de Source Control cuando tienes commits locales pero no hay un repositorio remoto configurado:

# VS Code detecta automáticamente que no hay remote configurado
# y muestra la opción "Publish to GitHub" en la interfaz

Para proyectos existentes en GitHub, puedes clonar el repositorio usando la paleta de comandos (Ctrl+Shift+P) y seleccionando "Git: Clone". Esto establece automáticamente la conexión remota y configura el tracking apropiado.

Operaciones de sincronización básicas

Una vez establecida la conexión, VS Code proporciona indicadores visuales claros del estado de sincronización. En la barra de estado verás información como "↑2 ↓1", indicando que tienes 2 commits por enviar y 1 por recibir.

El botón de sincronización en la barra de estado es tu herramienta principal para mantener los repositorios actualizados. Este botón combina las operaciones de pull y push en una sola acción:

# Al hacer clic en el botón de sync:
# 1. Primero ejecuta git pull (recibe cambios)
# 2. Después ejecuta git push (envía cambios)

Push: Enviar cambios al repositorio remoto

El push transfiere tus commits locales al repositorio remoto. VS Code facilita esta operación a través de múltiples métodos:

Método 1: Botón de sincronización El botón circular con flechas en la barra de estado ejecuta automáticamente push después de pull.

Método 2: Paleta de comandos Usa Ctrl+Shift+P y busca "Git: Push" para enviar cambios específicamente.

Método 3: Vista Source Control En el panel de Source Control, el menú "..." ofrece opciones detalladas de push.

# Ejemplo de flujo típico de push:
# 1. Realizas commits locales
# 2. VS Code muestra "↑3" (3 commits pendientes)
# 3. Haces clic en sync o usas Git: Push
# 4. Los cambios se envían a GitHub

Pull: Recibir cambios del repositorio remoto

El pull descarga y fusiona cambios del repositorio remoto a tu rama local. Esta operación es crucial cuando trabajas en equipo o desde múltiples dispositivos.

VS Code ejecuta pull automáticamente cuando usas el botón de sincronización, pero también puedes hacerlo manualmente:

# Indicadores de cambios remotos:
# "↓2" en la barra de estado = 2 commits por descargar
# Notificación automática cuando hay cambios disponibles

La operación de pull combina dos acciones: fetch (descargar) y merge (fusionar). VS Code maneja esto transparentemente, pero es importante entender que pull modifica tu rama de trabajo actual.

Fetch vs Pull: Diferencias fundamentales

Fetch descarga información del repositorio remoto sin modificar tu código local. Es una operación "segura" que te permite revisar cambios antes de integrarlos:

# Fetch solo descarga metadatos:
# - Referencias de ramas remotas
# - Información de commits
# - NO modifica tu código local

Pull combina fetch con merge, aplicando inmediatamente los cambios a tu rama actual:

# Pull = Fetch + Merge:
# 1. Descarga cambios remotos (fetch)
# 2. Los fusiona con tu rama actual (merge)
# 3. Actualiza tu directorio de trabajo

VS Code permite ejecutar fetch independientemente a través de la paleta de comandos ("Git: Fetch"), útil cuando quieres revisar cambios antes de integrarlos.

Tracking branches y configuración upstream

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

Los tracking branches establecen la relación entre tu rama local y su contraparte remota. VS Code configura esto automáticamente cuando publicas o clonas repositorios.

Cuando una rama tiene configurado su upstream, VS Code puede mostrar información precisa sobre el estado de sincronización:

# Configuración automática de tracking:
# Rama local "main" → Rama remota "origin/main"
# Permite comparaciones y sincronización directa

Si necesitas configurar manualmente el upstream, VS Code te guiará a través del proceso cuando intentes hacer push de una rama nueva. La interfaz mostrará opciones para establecer la conexión con la rama remota correspondiente.

Autenticación con GitHub

VS Code maneja la autenticación con GitHub de forma integrada. Al realizar tu primera operación remota, se abrirá un navegador para autorizar la conexión:

# Flujo de autenticación:
# 1. VS Code detecta operación remota
# 2. Abre navegador para GitHub OAuth
# 3. Autorizas la aplicación
# 4. Token se almacena automáticamente

Una vez autenticado, VS Code reutiliza las credenciales para operaciones futuras. Puedes gestionar estas credenciales desde la configuración de cuentas en VS Code (Ctrl+Shift+P → "Accounts: Sign out").

Indicadores de estado de sincronización

VS Code proporciona indicadores visuales claros del estado de sincronización en múltiples ubicaciones:

Barra de estado:

  • ↑3 = 3 commits locales pendientes de push
  • ↓2 = 2 commits remotos pendientes de pull
  • ↑1 ↓1 = 1 commit para enviar y 1 para recibir

Vista Source Control:

  • Contador de cambios pendientes
  • Estado de la rama actual
  • Indicadores de conflictos potenciales

Editor de archivos:

  • Líneas modificadas marcadas en el margen
  • Indicadores de cambios no confirmados
  • Estado de tracking por archivo

Estos indicadores te permiten mantener conciencia constante del estado de sincronización sin necesidad de ejecutar comandos adicionales, facilitando un flujo de trabajo eficiente y seguro.

Aprendizajes de esta lección de VSCode

  • Comprender cómo conectar un repositorio local con un repositorio remoto en GitHub desde VS Code.
  • Aprender a realizar operaciones básicas de sincronización como push y pull.
  • Diferenciar entre las operaciones fetch y pull y su impacto en el código local.
  • Entender la configuración de tracking branches y la importancia del upstream.
  • Conocer el proceso de autenticación con GitHub integrado en VS Code y cómo interpretar los indicadores de estado de sincronización.

Completa este curso de VSCode y certifícate

Únete a nuestra plataforma de cursos de programación y accede a miles de tutoriales, ejercicios prácticos, proyectos reales y nuestro asistente de IA personalizado para acelerar tu aprendizaje.

Asistente IA

Resuelve dudas al instante

Ejercicios

Practica con proyectos reales

Certificados

Valida tus conocimientos

Más de 25.000 desarrolladores ya se han certificado con CertiDevs

⭐⭐⭐⭐⭐
4.9/5 valoración