Sincronizza sviluppo locale con produzione

Come sincronizzare il tuo ambiente di sviluppo locale con la produzione

· 12 min di lettura ·
Scritto da: avatar autore Joella Dunn
avatar autore Joella Dunn
Joella è una scrittrice con anni di esperienza in WordPress. In Duplicator, è specializzata nella manutenzione del sito, dai backup di base alle migrazioni su larga scala. Il suo obiettivo finale è garantire che il tuo sito web WordPress sia sicuro e pronto per la crescita.
·
Revisionato da: avatar recensore John Turner
avatar recensore John Turner
John Turner è il Presidente di Duplicator. Ha oltre 20 anni di esperienza nel settore aziendale e nello sviluppo e i suoi plugin sono stati scaricati oltre 25 milioni di volte.

Quando la tua configurazione di sviluppo locale non corrisponde al tuo server di produzione, stai essenzialmente codificando alla cieca.

Potresti pensare che tutto funzioni. Probabilmente funziona, sulla tua macchina. Ma non è lì che conta.

Avere un processo affidabile per sincronizzare lo sviluppo locale con la produzione non è solo un "nice-to-have". È ciò che separa i professionisti dalle persone che incrociano le dita ogni volta che effettuano un deploy.

In questo post, ti guiderò attraverso metodi comprovati per mantenere sincronizzati i tuoi ambienti. Ne troverai uno che si adatta al tuo flusso di lavoro!

Ecco i punti chiave:

  • La sincronizzazione degli ambienti elimina i problemi di compatibilità e individua i bug prima che gli utenti li vedano
  • Puoi usare Duplicator per un flusso di lavoro di sincronizzazione locale semplice per principianti o GitHub + WP-CLI per il controllo da riga di comando
  • Scarica sempre il database dalla produzione e carica solo le modifiche al codice per evitare di sovrascrivere i dati live
  • I siti WordPress hanno tre parti da sincronizzare: codice (Git), database (WP-CLI) e file multimediali (rsync)
  • Esegui sempre il backup prima di sincronizzare qualsiasi cosa, usa ambienti di staging per i test e mantieni un file .gitignore appropriato

Indice

Perché sincronizzare i tuoi ambienti locali e di produzione?

Potresti probabilmente sopravvivere senza sincronizzare gli ambienti. Molte persone lo fanno. Si limitano ad affrontare l'occasionale bug a sorpresa, il problema di produzione casuale che non si è verificato localmente e l'incertezza persistente ogni volta che rilasciano un aggiornamento.

Ma perché sottoporsi a tutto questo?

Mantenere sincronizzati i tuoi ambienti locali e di produzione elimina tonnellate di problemi. Ecco cosa ottieni effettivamente facendolo nel modo giusto.

Individua gli errori prima che vadano online

Un ambiente locale sincronizzato rispecchia la configurazione effettiva del tuo server di produzione. Avrà la stessa versione di PHP, la stessa struttura del database e gli stessi plugin nelle stesse versioni.

Questo conta più di quanto potresti pensare.

Quando lavori su una configurazione locale che corrisponde alla produzione, i problemi di compatibilità emergono immediatamente. Li individui alla tua scrivania, non davanti agli utenti. Questa è la differenza tra un piccolo inconveniente e un vero problema.

Un sandbox realistico per i test

Testare con dati fittizi va bene per creare funzionalità iniziali. Ma a un certo punto, devi vedere come si comportano effettivamente le cose.

Il contenuto reale degli utenti è disordinato. I cataloghi dei prodotti presentano strani casi limite.

Il tuo sito locale ha bisogno di quei dati reali per darti un quadro accurato di ciò che sta accadendo.

Scaricare dalla produzione ti fornisce i post, gli utenti e i prodotti effettivi con cui il tuo codice interagirà. Non stai più indovinando; stai testando contro la realtà.

Nessun problema di compatibilità

Ogni sviluppatore ha detto, "Ma sulla mia macchina funzionava" almeno una volta. È praticamente un meme a questo punto.

Ma è anche sintomo di ambienti che non corrispondono. Quando la tua configurazione locale è praticamente identica alla produzione, questa scusa scompare. Se funziona localmente, funziona online.

Quel tipo di sicurezza cambia il tuo modo di lavorare. Smetti di dubitare di ogni deploy.

Migliora la collaborazione del team

Quando lavori da solo, puoi cavartela con un processo disordinato. Aggiungi un secondo sviluppatore al gruppo e le cose si complicano rapidamente.

Un processo di sincronizzazione coerente significa che tutti partono dalla stessa base. State testando tutti sullo stesso database, utilizzando la stessa struttura di contenuti ed eseguendo la stessa configurazione dell'ambiente.

Senza questo, finisci con tre versioni diverse di "locale" e nessuno è sicuro di quale sia la più vicina alla produzione. Questa non è collaborazione; è caos.

Come sincronizzare il tuo ambiente locale con la produzione

Potresti farlo manualmente. Esporta il database tramite phpMyAdmin, scaricalo, importalo localmente e cerca e sostituisci manualmente tutti gli URL nel file SQL. Quindi, accedi via FTP al tuo server, zippa la cartella uploads, scaricala, estraila localmente...

Sono esausto solo a scriverlo.

I metodi manuali sono noiosi e rischiosi. Ti sfugge una sostituzione di URL e il tuo sito locale inizia a puntare alle risorse di produzione. Dimentichi di aggiornare correttamente un array serializzato e hai corrotto il tuo database.

C'è un modo migliore. Ecco come sincronizzare i tuoi ambienti di sviluppo locale e di produzione:

  • Duplicator: plugin di migrazione con sostituzione automatica degli URL e installer guidati, perfetto per principianti o sincronizzazioni rapide
  • GitHub + WP-CLI: controllo da riga di comando per sincronizzare il codice tramite Git, il database tramite esportazioni WP-CLI e i media tramite rsync, ideale per sviluppatori che desiderano un controllo granulare

Sincronizza siti locali e di produzione con Duplicator

Questo è il metodo più semplice, specialmente se non ti senti a tuo agio a vivere nel terminale.

Duplicator crea un'istantanea completa del tuo sito e ti fornisce un installer che gestisce automaticamente tutte le parti complicate. Non dovrai preoccuparti delle sostituzioni manuali degli URL o dei mal di testa della configurazione del database.

Plugin Duplicator Pro

Trascinare dalla produzione al locale (il flusso di lavoro comune)

Questo è ciò che farai più spesso. Vuoi prendere lo stato attuale del tuo sito live e lavorarci localmente.

Inizia installando Duplicator Pro sul tuo sito di produzione e crea un nuovo backup completo del sito. Pensa a questo come a scattare un'istantanea dell'intero sito in questo preciso momento.

Preset backup sito completo

La creazione del backup richiede alcuni minuti a seconda delle dimensioni del tuo sito. Una volta completata, avrai due file: un archivio (solitamente un file .daf o .zip) e uno script di installazione (un file .php). Scarica entrambi.

Scarica backup Duplicator Lite

Ora vai al tuo ambiente locale. Crea una directory vuota dove vuoi che risieda la tua copia locale. Inserisci entrambi i file, l'archivio e l'installer, in quella directory vuota.

Carica i file del sito clonato

Apri il tuo browser e naviga in quella directory. Qualcosa come http://localhost/mysite/installer.php. Si avvia la procedura guidata di installazione di Duplicator.

Procedura guidata di migrazione Duplicator

La procedura guidata ti accompagna nella connessione al tuo database locale e gestisce automaticamente tutte le sostituzioni degli URL.

Sa che il tuo sito di produzione era su https://mysite.com e il tuo sito locale è su http://localhost/mysite. Corregge ogni riferimento nel database senza che tu debba toccare nulla.

Cinque minuti dopo, hai una copia locale perfetta del tuo sito di produzione.

Push da locale a produzione

Questo flusso di lavoro va nella direzione opposta. Stai prendendo il tuo sito locale e lo stai distribuendo in produzione.

Fai attenzione qui. Questo è veramente solo per il lancio di nuovi siti o per redesign completi. Se hai un sito live con utenti attivi, probabilmente non vorrai farlo. Sovrascriverai i loro post, commenti e ordini recenti.

Se hai bisogno di inviare dal locale alla produzione, il processo è simile ma invertito.

Prima – e non posso sottolinearlo abbastanza – esegui un backup completo del tuo sito di produzione prima di fare qualsiasi altra cosa.

Quindi, crea un backup del tuo sito locale usando Duplicator e scaricalo. Carica entrambi i file di backup sul tuo server di produzione tramite FTP o trascina l'archivio nella pagina Importa.

Importa un backup con Duplicator

Di nuovo: fallo solo se sei sicuro di voler sostituire completamente la produzione. Per assicurarti di poter facilmente annullare eventuali modifiche impreviste, assicurati di impostare un punto di ripristino.

Punto di ripristino in caso di disastro prima della migrazione

Duplicator ti fornirà un URL di ripristino che ripristina un backup recente, anche se il tuo sito è completamente danneggiato.

Sincronizza siti locali e di produzione con GitHub e WP-CLI

Se ti senti a tuo agio con la riga di comando, questo metodo ti offre maggiore controllo e si adatta a un flusso di lavoro basato su Git.

Ecco il punto sui siti WordPress: sono composti da tre parti distinte che devono tutte essere sincronizzate separatamente.

  • Codice: i file del tuo tema, i plugin e i file core di WordPress. Questo è ciò che Git gestisce.
  • Database: tutti i tuoi contenuti, impostazioni e configurazioni. Git non lo tocca. Hai bisogno di WP-CLI.
  • Media: tutto nella tua cartella /wp-content/uploads/. Nemmeno questo è in Git. Hai bisogno di rsync o di uno strumento simile.

Comprendere questa separazione è fondamentale. Git da solo non basta.

Il flusso di lavoro per scaricare dalla produzione

Esaminiamo come portare il tuo sito di produzione in locale.

Per il codice, è semplice. Se il tuo tema e i tuoi plugin personalizzati sono in un repository Git, esegui semplicemente:

git pull origin main

Il tuo codice locale ora corrisponde alla produzione.

Per il database, connettiti via SSH al tuo server di produzione ed esporta il database usando WP-CLI:

wp db export production-backup.sql

Scarica quel file .sql sulla tua macchina locale. Quindi importalo localmente:

wp db import production-backup.sql

Ma non hai ancora finito. Il tuo database contiene ancora tutti gli URL di produzione. Devi sostituirli con i tuoi URL locali:

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

Questo comando di ricerca e sostituzione cerca in ogni tabella e campo, aggiornando gli URL ovunque appaiano. Gestisce anche correttamente i dati serializzati, il che è fondamentale per WordPress.

Salta questo passaggio e il tuo sito locale tenterà di caricare immagini dalla produzione, ti reindirizzerà al sito live e in generale si comporterà come se non sapesse dove si trova.

Per i file multimediali, usa rsync. È progettato per sincronizzare grandi directory in modo efficiente.

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

Le opzioni -avz significano “modalità archivio, output dettagliato, compressione durante il trasferimento”. Questo comando scarica solo i file modificati, quindi le sincronizzazioni successive sono veloci.

Esegui questi tre passaggi (scarica codice, importa database, sincronizza media) e avrai una copia locale completa della produzione.

Migliori pratiche per garantire una sincronizzazione fluida e sicura

Puoi avere i migliori strumenti del mondo, ma non importa se li usi nel modo sbagliato.

Ho visto sviluppatori cancellare database di produzione perché hanno eseguito un push quando avrebbero dovuto eseguire un pull. Ho visto persone saltare i backup perché “è solo una rapida sincronizzazione” e poi passare il fine settimana a recuperare dati.

Non essere quella persona.

Queste migliori pratiche possono fare la differenza tra un flusso di lavoro fluido e un errore che può compromettere la carriera.

Esegui sempre prima il backup

Prima di sincronizzare qualsiasi cosa in qualsiasi direzione, effettua un backup. L'unica volta che lo salti, qualcosa andrà storto.

Duplicator rende tutto questo facile: è sia un plugin di migrazione che di backup. Il primo passo in ogni migrazione push o pull sarà un backup completo del sito, proteggendo il tuo sito.

Se succede qualcosa, premi il pulsante Ripristina con un clic.

Ripristina backup Duplicator

Oppure, carica entrambi i file di backup sullo stesso server. Esegui l'installer e segui le istruzioni di ripristino.

Se stai usando strumenti da riga di comando, esegui un rapido wp db export prima di fare qualsiasi altra cosa.

Cinque minuti per creare un backup possono farti risparmiare giorni di lavoro di recupero.

Scarica i dati, carica il codice

Ecco il flusso di lavoro professionale standard: scarica il database e i file multimediali dalla produzione al locale. Carica le modifiche al codice sulla produzione solo tramite Git.

Dovresti raramente caricare il tuo database locale sulla produzione, a meno che tu non stia lanciando un sito completamente nuovo.

Perché? Perché la produzione ha dati reali che cambiano costantemente. Se sovrascrivi il database di produzione con la tua copia locale, tutta quell'attività recente scomparirà.

Usa un ambiente di staging

Il flusso di lavoro ideale non è Locale » Produzione. È Locale » Staging » Produzione.

Un ambiente di staging è una copia del tuo sito di produzione che risiede su un server effettivo ma non è accessibile pubblicamente. È il tuo terreno di prova finale prima che le modifiche vadano online.

Sviluppi localmente. Quindi, testi sullo staging con la configurazione del server reale e i dati di produzione recenti. Solo dopo che tutto è stato verificato sullo staging, distribuisci sulla produzione.

Questo aggiunge un buffer di sicurezza. Se qualcosa si rompe sullo staging, nessun utente lo vede. Lo rilevi e lo correggi prima che abbia importanza.

Non tutti i progetti necessitano di staging, specialmente i siti piccoli. Ma per qualsiasi cosa con traffico reale o funzionalità e-commerce, vale la pena impostarlo.

Usa un file .gitignore

Se stai usando Git, devi dirgli cosa non tracciare.

Il tuo file wp-config.php contiene credenziali del database diverse per ogni ambiente. Non dovrebbe essere nel controllo di versione.

La tua cartella /wp-content/uploads/ può contenere gigabyte di immagini e file. Anche questi non appartengono a Git: per questo serve rsync.

Crea un file .gitignore nella root del tuo repository e aggiungi almeno questi:

wp-config.php

.htaccess

wp-content/uploads/

*.log

Questo mantiene il tuo repository pulito e ti impedisce di eseguire accidentalmente il commit di informazioni sensibili o di gonfiare il tuo repository con file binari.

Domande frequenti (FAQ)

Come si sincronizza la libreria multimediale?

Se stai usando Duplicator, la libreria multimediale è inclusa automaticamente nei backup completi del sito. Quando sposti i backup da o verso la produzione, sposterai anche i tuoi file multimediali. Per un flusso di lavoro manuale, rsync è lo strumento migliore perché trasferisce solo i file che sono cambiati dall'ultima sincronizzazione.

Come si sincronizza lo sviluppo locale con la produzione su GitHub?

GitHub (Git) sincronizza solo il codice. Non sincronizza il database o la libreria multimediale: hai bisogno di un processo separato per questi, come WP-CLI e rsync.

Git è sufficiente per sincronizzare un sito WordPress?

No. Gestisce solo il codice, che è solo una delle tre parti essenziali. Il tuo sito sarà rotto senza il database e i file multimediali.

Con quale frequenza dovrei eseguire il pull dalla produzione al mio sito locale?

Dovresti eseguire il pull del tuo sito dalla produzione al locale prima di iniziare qualsiasi nuova funzionalità o attività. Questo evita di compromettere il tuo sito live.

Perfeziona il tuo flusso di lavoro di sincronizzazione WordPress

Andare oltre i metodi manuali è uno di quei punti di svolta nella tua carriera di sviluppo. Smetti di essere qualcuno che copia file in giro e incrocia le dita. Diventi qualcuno con un processo.

Un flusso di lavoro ripetibile, sia che tu stia usando uno strumento come Duplicator o eseguendo comandi nel terminale, sostituisce l'ansia da distribuzione con la fiducia.

Il tuo io futuro ti ringrazierà la prossima volta che avrai bisogno di testare una funzionalità con dati di produzione reali, o di scaricare i contenuti più recenti, o di distribuire senza stress.

Pronto a smettere di destreggiarti tra strumenti da riga di comando e preoccuparti se hai saltato un passaggio? Duplicator Pro ti offre un toolkit completo e affidabile per migrare ed eseguire il backup del tuo sito.

Crea un backup completo del sito, invialo direttamente allo storage cloud e distribuiscilo in una nuova posizione con un installer semplice e guidato che gestisce tutto il lavoro pesante. Dai un'occhiata a Duplicator Pro per semplificare il tuo flusso di lavoro oggi stesso!

Mentre sei qui, penso che ti piaceranno queste altre risorse WordPress selezionate con cura:

avatar autore
Joella Dunn Content Writer
Joella è una scrittrice con anni di esperienza in WordPress. In Duplicator, è specializzata nella manutenzione del sito, dai backup di base alle migrazioni su larga scala. Il suo obiettivo finale è garantire che il tuo sito web WordPress sia sicuro e pronto per la crescita.
I nostri contenuti sono supportati dai lettori. Se fai clic su determinati link, potremmo ricevere una commissione.

Non lasciare che un altro giorno passi senza protezione

Ogni ora senza backup adeguati di WordPress mette il tuo sito a rischio • Ogni migrazione di WordPress ritardata ti costa in termini di prestazioni e crescita

Ottieni Duplicator Ora
Plugin Duplicatore

Aspetta! Non perdere la tua
offerta esclusiva!

Come cliente , ottieni il 60% DI SCONTO

Prova Duplicator gratuitamente sul tuo sito: scopri perché oltre 1,5 milioni di professionisti di WordPress si fidano di noi. Ma non aspettare: questo sconto esclusivo del 60% è disponibile solo per un periodo limitato.

o
Ottieni 60% di Sconto su Duplicator Pro Ora →