Sincronizar entorno de desarrollo local con producción

Cómo sincronizar tu entorno de desarrollo local con producción

· 12 min de lectura ·
Escrito por: avatar del autor Joella Dunn
avatar del autor Joella Dunn
Joella es una escritora con años de experiencia en WordPress. En Duplicator, se especializa en el mantenimiento de sitios, desde copias de seguridad básicas hasta migraciones a gran escala. Su objetivo final es asegurarse de que su sitio web de WordPress sea seguro y esté preparado para crecer.
·
Revisado por: avatar del revisor John Turner
avatar del revisor John Turner
John Turner es el presidente de Duplicator. Tiene más de 20 años de experiencia en negocios y desarrollo, y sus plugins han sido descargados más de 25 millones de veces.

Cuando tu entorno de desarrollo local no coincide con tu servidor de producción, básicamente estás programando a ciegas.

Podrías pensar que todo funciona. Probablemente funciona, en tu máquina. Pero ahí no es donde importa.

Tener un proceso fiable para sincronizar el desarrollo local con producción no es solo un extra deseable. Es lo que separa a los profesionales de las personas que cruzan los dedos cada vez que implementan.

En esta publicación, te guiaré a través de métodos probados para mantener tus entornos sincronizados. ¡Encontrarás uno que se adapte a tu flujo de trabajo!

Aquí están los puntos clave:

  • Sincronizar entornos elimina problemas de compatibilidad y detecta errores antes de que los usuarios los vean.
  • Puedes usar Duplicator para un flujo de trabajo de sincronización local fácil de usar para principiantes o GitHub + WP-CLI para control por línea de comandos.
  • Siempre descarga la base de datos de producción y sube solo los cambios de código para evitar sobrescribir datos en vivo.
  • Los sitios de WordPress tienen tres partes para sincronizar: código (Git), base de datos (WP-CLI) y archivos multimedia (rsync).
  • Haz siempre una copia de seguridad antes de sincronizar nada, usa entornos de staging para probar y mantén un archivo .gitignore adecuado.

Tabla de Contenidos

¿Por qué sincronizar tus entornos locales y de producción?

Probablemente podrías sobrevivir sin sincronizar entornos. Mucha gente lo hace. Simplemente lidian con el error ocasional sorpresa, el problema aleatorio de producción que no ocurrió localmente y la incertidumbre persistente cada vez que suben una actualización.

¿Pero por qué pasar por eso?

Mantener tus entornos locales y de producción sincronizados elimina toneladas de problemas. Esto es lo que realmente obtienes al hacerlo bien.

Detecta errores antes de que salgan en vivo.

Un entorno local sincronizado refleja la configuración real de tu servidor de producción. Tendrá la misma versión de PHP, estructura de base de datos y plugins en las mismas versiones.

Esto importa más de lo que podrías pensar.

Cuando trabajas en una configuración local que coincide con la de producción, los problemas de compatibilidad surgen de inmediato. Los detectas en tu escritorio, no delante de los usuarios. Esa es la diferencia entre una inconveniencia menor y un problema real.

Un entorno de pruebas realista.

Probar con datos ficticios está bien para construir características iniciales. Pero en algún momento, necesitas ver cómo se comportan las cosas en realidad.

El contenido real del usuario es desordenado. Los catálogos de productos tienen casos extremos extraños.

Tu sitio local necesita esos datos reales para darte una imagen precisa de lo que está sucediendo.

Descargar desde producción te da las publicaciones, usuarios y productos reales con los que interactuará tu código. Ya no estás adivinando; estás probando contra la realidad.

Sin problemas de compatibilidad.

Cada desarrollador ha dicho, "Pero funcionaba en mi máquina" al menos una vez. Es básicamente un meme en este punto.

Pero también es un síntoma de entornos que no coinciden. Cuando tu configuración local es básicamente idéntica a la de producción, esta excusa desaparece. Si funciona localmente, funciona en vivo.

Ese tipo de confianza cambia tu forma de trabajar. Dejas de dudar de cada implementación.

Mejora la colaboración en equipo.

Cuando trabajas solo, puedes salirte con la tuya con un proceso desordenado. Añade un segundo desarrollador a la mezcla y las cosas se complican rápidamente.

Un proceso de sincronización coherente significa que todos parten de la misma base. Todos estáis probando contra la misma base de datos, utilizando la misma estructura de contenido y ejecutando la misma configuración del entorno.

Sin eso, acabas con tres versiones diferentes de "local", y nadie está seguro de cuál está más cerca de producción. Eso no es colaboración; es caos.

Cómo sincronizar tu entorno local con producción

Podrías hacerlo manualmente. Exporta la base de datos a través de phpMyAdmin, descárgala, impórtala localmente y busca y reemplaza manualmente todas las URL en el archivo SQL. Luego, haz FTP a tu servidor, comprime la carpeta de subidas, descárgala, extráela localmente...

Solo de escribirlo estoy agotado.

Los métodos manuales son tediosos y arriesgados. Si te olvidas de reemplazar una URL, tu sitio local empezará a apuntar a recursos de producción. Si olvidas actualizar correctamente un array serializado, habrás corrompido tu base de datos.

Hay una mejor manera. Aquí te explicamos cómo sincronizar tus entornos de desarrollo local y producción:

  • Duplicator: Plugin de migración con reemplazo automático de URL e instaladores guiados, perfecto para principiantes o sincronizaciones rápidas.
  • GitHub + WP-CLI: Control de línea de comandos para sincronizar código vía Git, base de datos vía exportaciones de WP-CLI y medios vía rsync, ideal para desarrolladores que desean un control granular.

Sincroniza sitios locales y de producción con Duplicator

Este es el método más sencillo, especialmente si no te sientes cómodo trabajando en la terminal.

Duplicator crea una instantánea completa de tu sitio y te proporciona un instalador que se encarga automáticamente de las partes complicadas. No tendrás que preocuparte por reemplazos manuales de URL ni por dolores de cabeza con la configuración de la base de datos.

Plugin Duplicator Pro

Traer datos de Producción a Local (El Flujo de Trabajo Común)

Esto es lo que harás la mayor parte del tiempo. Quieres obtener el estado actual de tu sitio en vivo y trabajar con él localmente.

Empieza instalando Duplicator Pro en tu sitio de producción y crea una nueva copia de seguridad completa del sitio. Piensa en esto como tomar una instantánea de todo tu sitio en este preciso momento.

Ajuste preestablecido de copia de seguridad completa del sitio

La creación de la copia de seguridad tarda unos minutos, dependiendo del tamaño de tu sitio. Una vez hecho, tendrás dos archivos: un archivo (normalmente un archivo .daf o .zip) y un script instalador (un archivo .php). Descarga ambos.

Descargar copia de seguridad de Duplicator Lite

Ahora ve a tu entorno local. Crea un directorio vacío donde quieras que resida tu copia local. Coloca ambos archivos, el archivo y el instalador, en ese directorio vacío.

Subir archivos del sitio clonado

Abre tu navegador y navega a ese directorio. Algo como http://localhost/misitio/installer.php. Se inicia el asistente de instalación de Duplicator.

Asistente de migración de Duplicator

El asistente te guía para conectar con tu base de datos local y se encarga automáticamente de todos los reemplazos de URL.

Sabe que tu sitio de producción estaba en https://misitio.com y tu sitio local está en http://localhost/misitio. Corrige cada referencia en la base de datos sin que tengas que tocar nada.

Cinco minutos después, tendrás una copia local perfecta de tu sitio de producción.

Empujar de local a producción

Este flujo de trabajo va en la dirección opuesta. Estás tomando tu sitio local y desplegándolo en producción.

Ten cuidado aquí. Esto es realmente solo para lanzamientos de sitios nuevos o rediseños completos. Si tienes un sitio en vivo con usuarios activos, probablemente no querrás hacer esto. Sobrescribirás sus publicaciones, comentarios y pedidos recientes.

Si necesitas empujar de local a producción, el proceso es similar pero invertido.

Primero, y no puedo enfatizar esto lo suficiente, haz una copia de seguridad completa de tu sitio de producción antes de hacer cualquier otra cosa.

Luego, crea una copia de seguridad de tu sitio local usando Duplicator y descárgala. Sube ambos archivos de copia de seguridad a tu servidor de producción a través de FTP o arrastra y suelta el archivo comprimido en la página de Importar.

Importar una copia de seguridad con Duplicator

De nuevo: haz esto solo si estás seguro de que quieres reemplazar completamente la producción. Para asegurarte de que puedes revertir fácilmente cualquier cambio inesperado, asegúrate de establecer un punto de recuperación.

Punto de recuperación ante desastres antes de la migración

Duplicator te dará una URL de recuperación que restaura una copia de seguridad reciente, incluso si tu sitio está completamente roto.

Sincronizar sitios locales y de producción con GitHub y WP-CLI

Si te sientes cómodo con la línea de comandos, este método te da más control y se adapta a un flujo de trabajo basado en Git.

La cosa sobre los sitios de WordPress es que están hechos de tres partes distintas que deben sincronizarse por separado.

  • Código: tus archivos de tema, plugins y archivos principales de WordPress. Esto es lo que Git maneja.
  • Base de datos: todo tu contenido, configuraciones y ajustes. Git no toca esto. Necesitas WP-CLI.
  • Medios: todo en tu carpeta /wp-content/uploads/. Tampoco está en Git. Necesitas rsync o una herramienta similar.

Comprender esta separación es clave. Git por sí solo no será suficiente.

El flujo de trabajo para descargar de producción

Vamos a repasar cómo bajar tu sitio de producción a local.

Para el código, es simple. Si tu tema y plugins personalizados están en un repositorio Git, simplemente ejecuta:

git pull origin main

Tu código local ahora coincide con el de producción.

Para la base de datos, conéctate por SSH a tu servidor de producción y exporta la base de datos usando WP-CLI:

wp db export production-backup.sql

Descarga ese archivo .sql a tu máquina local. Luego impórtalo localmente:

wp db import production-backup.sql

Pero aún no has terminado. Tu base de datos todavía tiene todas las URL de producción. Necesitas reemplazarlas con tus URL locales:

wp search-replace 'https://mysite.com' 'http://localhost/mysite'

Este comando de búsqueda y reemplazo busca en cada tabla y campo, actualizando las URL dondequiera que aparezcan. Incluso maneja datos serializados correctamente, lo cual es crítico para WordPress.

Si omites este paso, tu sitio local intentará cargar imágenes de producción, te redirigirá al sitio en vivo y, en general, se comportará como si no supiera dónde vive.

Para los archivos multimedia, usa rsync. Está diseñado para sincronizar directorios grandes de manera eficiente.

rsync -avz user@mysite.com:/path/to/wp-content/uploads/ ./wp-content/uploads/

Las banderas -avz significan “modo archivo, salida detallada, comprimir durante la transferencia”. Este comando solo descarga archivos que han cambiado, por lo que las sincronizaciones posteriores son rápidas.

Ejecuta estos tres pasos (descargar código, importar base de datos, sincronizar medios) y tendrás una copia local completa de producción.

Mejores prácticas para garantizar una sincronización fluida y segura

Puedes tener las mejores herramientas del mundo, pero no importa si las usas mal.

He visto a desarrolladores borrar bases de datos de producción porque hicieron push cuando debían haber hecho pull. He visto a gente omitir copias de seguridad porque “es solo una sincronización rápida” y luego pasar el fin de semana recuperando datos.

No seas esa persona.

Estas mejores prácticas pueden marcar la diferencia entre un flujo de trabajo fluido y un error que ponga fin a tu carrera.

Haz siempre una copia de seguridad primero

Antes de sincronizar nada en ninguna dirección, haz una copia de seguridad. La única vez que la omitas, algo saldrá mal.

Duplicator facilita esto: es un plugin de migración y copia de seguridad. El primer paso en cada migración de push o pull será una copia de seguridad completa del sitio, protegiendo tu sitio.

Si algo sucede, pulsa el botón Restaurar de un clic.

Restaurar copia de seguridad de Duplicator

O, sube ambos archivos de copia de seguridad al mismo servidor. Ejecuta el instalador y sigue las instrucciones de recuperación.

Si estás utilizando herramientas de línea de comandos, ejecuta un rápido wp db export antes de hacer nada más.

Cinco minutos de creación de copias de seguridad pueden ahorrarte días de trabajo de recuperación.

Descarga, sube código

Aquí está el flujo de trabajo profesional estándar: descarga la base de datos y los archivos multimedia de producción a local. Solo sube los cambios de código a producción a través de Git.

Rara vez deberías subir tu base de datos local a producción a menos que estés lanzando un sitio completamente nuevo.

¿Por qué? Porque producción tiene datos reales que cambian constantemente. Si sobrescribes la base de datos de producción con tu copia local, toda esa actividad reciente desaparece.

Usa un entorno de staging

El flujo de trabajo ideal no es Local » Producción. Es Local » Staging » Producción.

Un entorno de staging es una copia de tu sitio de producción que reside en un servidor real pero no es público. Es tu campo de pruebas final antes de que los cambios salgan en vivo.

Desarrollas localmente. Luego, pruebas en staging con la configuración real del servidor y datos de producción recientes. Solo después de que todo esté correcto en staging, despliega a producción.

Esto añade un búfer de seguridad. Si algo falla en staging, ningún usuario lo ve. Lo detectas y lo corriges antes de que importe.

No todos los proyectos necesitan staging, especialmente los sitios pequeños. Pero para cualquier cosa con tráfico real o funcionalidad de comercio electrónico, vale la pena configurarlo.

Usa un archivo .gitignore

Si estás usando Git, necesitas decirle qué no rastrear.

Tu archivo wp-config.php tiene credenciales de base de datos que son diferentes en cada entorno. No debería estar en el control de versiones.

Tu carpeta /wp-content/uploads/ puede contener gigabytes de imágenes y archivos. Esos tampoco pertenecen a Git; para eso está rsync.

Crea un archivo .gitignore en la raíz de tu repositorio y añade como mínimo:

wp-config.php

.htaccess

wp-content/uploads/

*.log

Esto mantiene tu repositorio limpio y evita que confirmes accidentalmente información confidencial o que hinches tu repositorio con archivos binarios.

Preguntas Frecuentes (FAQs)

¿Cómo sincronizas las bibliotecas de medios?

Si usas Duplicator, la biblioteca de medios se incluye automáticamente en las copias de seguridad completas del sitio. Cuando muevas copias de seguridad hacia o desde producción, también moverás tus archivos multimedia. Para un flujo de trabajo manual, rsync es la mejor herramienta porque solo transfiere los archivos que han cambiado desde la última sincronización.

¿Cómo sincronizas el entorno de desarrollo local con producción en GitHub?

GitHub (Git) solo sincroniza el código. No sincroniza la base de datos ni la biblioteca de medios; necesitas un proceso separado para eso, como WP-CLI y rsync.

¿Es Git suficiente para sincronizar un sitio de WordPress?

No. Solo maneja el código, que es solo una de las tres partes esenciales. Tu sitio estará roto sin la base de datos y los archivos multimedia.

¿Con qué frecuencia debo descargar desde producción a mi sitio local?

Debes descargar tu sitio desde producción a tu entorno local antes de comenzar cualquier nueva función o tarea. Esto evita que rompas tu sitio en vivo.

Perfecciona tu flujo de trabajo de sincronización de WordPress

Ir más allá de los métodos manuales es uno de esos puntos de inflexión en tu carrera de desarrollo. Dejas de ser alguien que copia archivos y cruza los dedos. Te conviertes en alguien con un proceso.

Un flujo de trabajo repetible, ya sea que uses una herramienta como Duplicator o ejecutes comandos en la terminal, reemplaza la ansiedad de implementación con confianza.

Tu yo futuro te lo agradecerá la próxima vez que necesites probar una función con datos reales de producción, o descargar el último contenido, o implementar sin estrés.

¿Listo para dejar de hacer malabares con herramientas de línea de comandos y preocuparte por si te has saltado un paso? Duplicator Pro te ofrece un kit de herramientas completo y fiable para migrar y hacer copias de seguridad de tu sitio.

Crea una copia de seguridad completa del sitio, envíala directamente al almacenamiento en la nube y despliégala en una nueva ubicación con un instalador simple y guiado que se encarga de todo el trabajo pesado. ¡Echa un vistazo a Duplicator Pro para simplificar tu flujo de trabajo hoy mismo!

Ya que estás aquí, creo que te gustarán estos otros recursos de WordPress seleccionados:

avatar del autor
Joella Dunn Redactor de Contenidos
Joella es una escritora con años de experiencia en WordPress. En Duplicator, se especializa en el mantenimiento de sitios, desde copias de seguridad básicas hasta migraciones a gran escala. Su objetivo final es asegurarse de que su sitio web de WordPress sea seguro y esté preparado para crecer.
Nuestro contenido es compatible con el lector. Si hace clic en ciertos enlaces, podemos recibir una comisión.

No dejes pasar un día más sin protección

Cada hora sin copias de seguridad adecuadas de WordPress pone tu sitio en riesgo • Cada migración de WordPress retrasada te cuesta rendimiento y crecimiento

Obtener Duplicator ahora
Plugin Duplicator

¡Espera! No te pierdas tu
oferta exclusiva!

Como cliente de , obtienes un 60% DE DESCUENTO

Prueba Duplicator gratis en tu sitio y comprueba por qué más de 1,5 millones de profesionales de WordPress confían en nosotros. Pero no esperes, este descuento exclusivo del 60% solo está disponible por tiempo limitado.

o
Obtén un 60% de descuento en Duplicator Pro ahora →