Workflow DEV

Il perfetto flusso di lavoro di sviluppo WordPress con Git & SSH

Forse ti sei chiesto: "Come faccio a pubblicare il mio sito WordPress?" o "Qual è il modo migliore per mettere online il mio sito WordPress?". Se sei uno sviluppatore in erba o un'agenzia che vuole aumentare le proprie prestazioni, sarai sicuramente inorridito dalla marea di risultati di ricerca (obsoleti) su Stack Overflow e Google che riguardano lo sviluppo di WordPress. In questo post, quindi, ti presenterò un processo di distribuzione collaudato per trasferire il tuo sito web WordPress da un dispositivo locale a un server. Andiamo con SSH! 

Che cos'è l'SSH?

SSH (abbreviazione di "Secure Shell") è un metodo per connettersi a un sistema o a un server utilizzando l'interfaccia a riga di comando (CLI). In poche parole, con SSH non dovrai perdere tempo a navigare in diverse interfacce utente per trasferire i tuoi dati. 

Perché SSH è così bello?

Una volta che hai impostato SSH, non hai più bisogno di trascinare i file. Questo porta a meno errori e a tempi di distribuzione più rapidi.

Per chi è adatto SSH?

SSH può essere usato da team di sviluppo di qualsiasi livello e dimensione. SSH è un modo molto sicuro e veloce per modificare il tuo progetto e pubblicare le modifiche. Soprattutto se state lavorando su progetti più grandi, renderete il vostro flusso di lavoro molto più efficiente con SSH.

Per esempio, con Git, puoi mettere tutto il tuo lavoro in un repository e spingerlo sul tuo server, così come lavorare in modo collaborativo su un progetto come una squadra - senza dover spostare i file avanti e indietro tra di loro.

Perché usare SSH? 

Il motivo per cui si usa SSH varia a seconda del caso d'uso. SSH è usato principalmente per queste ragioni:

  • SSH è sicuro,
  • veloce e
  • può essere automatizzato!

E come se questo non fosse un motivo sufficiente per voi, potete anche accoppiare SSH con il controllo di versione di Git. Se hai bisogno di fare un rollback del tuo sviluppo a causa di un bug o di una caratteristica rotta, anche questo è molto facile: un rollback è fatto direttamente dal tuo repository GitHub.

Utilizzi SSH come sviluppatore junior? 

Chiunque si addentri nell'argomento SSH può sentirsi rapidamente sopraffatto, perché a prima vista il sistema sembra estremamente complesso. Ma non preoccuparti: questo tutorial ti guiderà attraverso tutti i passaggi più importanti. Come saprai, l'esperienza pratica nello sviluppo con Git e SSH è molto preziosa e oggi è uno standard del settore.

Perché un'agenzia dovrebbe usare SSH?

Oltre ai già citati vantaggi di risparmio di tempo e di controllo delle versioni, SSH vi permette di accedere in modo sicuro al vostro server da qualsiasi dispositivo che abbia la vostra chiave SSH installata. 

Non essere legati a un dispositivo specifico significa libertà di localizzazione. 

Primi passi con SSH

Raidboxes ti offre un piano di hosting WordPress per lo sviluppo gratuito dei tuoi progetti WordPress. Quindi, se vuoi fare pratica con SSH, sei sulla strada giusta.

Il tuo Raidboxes Box è il luogo in cui ospiterai il tuo sito web WordPress. Tuttavia, non potrai spingere i tuoi commit Git direttamente. Questa è una funzione di sicurezza di Raidboxes che garantisce che il tuo Box rimanga sicuro. Dovrai invece utilizzare un provider di terze parti per eseguire il push del tuo repo con git pull nel tuo Box . Per questo tutorial ho utilizzato GitHub. Naturalmente, puoi anche utilizzare un altro servizio: il processo è abbastanza simile.

Come funziona esattamente il processo, l'ho visualizzato per voi una volta: 

sviluppo di wordpress

Se hai già ... 

  • Git installato sul tuo dispositivo,
  • Chiavi SSH generate e 
  • ha aggiunto la tua chiave SSH pubblica a GitHub, 

poi passa direttamente al passo 4: imposta la tua chiave SSH in Raidboxes .

Passo 1: controllare se hai installato Git

Puoi verificare facilmente se Git è installato sul dispositivo che stai utilizzando: Apri lo strumento a riga di comando (Windows) o il Terminale (Mac) e inserisci il seguente comando: 

ssh-13

git version

Se vedi un numero di versione, Git è installato sul tuo dispositivo. 

ssh-7

Se ricevi un messaggio di errore, puoi installare Git qui. (Potrebbe essere necessario aggiornare Git se stai utilizzando una versione precedente).

Passo 2: Configurare le chiavi SSH

Controlla se ci sono chiavi SSH esistenti:

Le chiavi SSH sono necessarie per connettersi in modo sicuro a GitHub e Raidboxes tramite una connessione SSH. Se non sei sicuro di aver già generato delle chiavi SSH, di solito puoi trovarle in questo modo:

  1. Apri il Git Bash
  2. Inserisci il seguente comando

ls -al ~/.ssh

Se disponi di chiavi SSH, otterrai un output con i nomi corrispondenti: 

ssh-6

Le chiavi SSH si trovano solitamente nella directory principale dei dispositivi dei tuoi utenti. Controlla la directory:

C:\Users\<YOUR USER NAME>\.ssh

Per maggiori dettagli sulle chiavi SSH, controlla i documenti ufficiali di GitHub.

Genera nuove chiavi SSH:  

Esistono diversi modi per creare chiavi SSH. Ti consiglio di seguire la documentazione su GitHub Docs: ci sono istruzioni per Windows, Mac e Linux.

Passo 3: Aggiungi la tua chiave SSH a GitHub

Come prerequisito per spingere il tuo sviluppo locale su GitHub, devi aggiungere la tua chiave SSH a GitHub. Per farlo, seguite la documentazione ufficiale di GitHub

Potete verificare se hai impostato correttamente la chiave SSH con : 

Passo 4: Configurare la chiave SSH in Raidboxes

Raidboxes ti permette di collegarti al tuo server tramite una connessione SSH. Per prima cosa devi registrare la chiave SSH nella GUI (interfaccia grafica utente). 

Per farlo, accedi a Raidboxes Dashboard . Seleziona il sito Box a cui vuoi collegarti tramite SSH:

ssh-5

Vai su Impostazioni > SSH:

ssh-8

Abilita SSH cliccando sul pulsante "Off" per attivarlo e seleziona le impostazioni SSH:

ssh-15

Tieni pronta la tua chiave SSH (vedi punto 2). Raidboxes richiede l'inserimento della tua chiave SSH pubblica. 

Vai alla directory sulla tua macchina locale che contiene le tue chiavi SSH:

C:\Users\Admin\.ssh

Aprire il file id_rsa.pub. Copia l'intero contenuto del file, compreso l'inizio "ssh-rsa", e incollalo nel campo SSH: 

ssh-10

Clicca su Salva e torna al sito Dashboard del tuo Box . 

Nella sezione SSH troverai i dati di accesso per collegarti a Raidboxes tramite SSH. Hai bisogno dei seguenti dati di accesso: 

  • Nome utente, 
  • Dettagli dell'host e 
  • La passphrase SSH che hai creato per la tua chiave SSH (vedi punto 2). 
Il perfetto flusso di lavoro di sviluppo WordPress  con Git &amp; SSH

Aprire Git Bash (Windows) o Terminal (Mac). Il comando per connettersi via SSH è:

ssh <user-name>@<host-details>

Un esempio con il mio account fittizio potrebbe essere: 

ssh wp@XXXXXX.myraidbox.de

ssh-1

Ora ti verrà chiesto di inserire la tua passphrase SSH. Inseriscilo e dai il benvenuto al tuo albero dei file Raidboxes Box ! 

SE ricevi un messaggio di avviso che indica che la connessione è sconosciuta (è la prima connessione), puoi procedere come segue:

  • Inserisci sì,
  • uscire da Git Bash,
  • apri nuovamente Git Bash e
  • inserisci nuovamente i tuoi dati di conflitto SSH. 
ssh-2

Passo 5: La struttura della directory Raidboxes

Come indicato nella schermata di benvenuto della connessione SSH al tuo sito Raidboxes Box , la directory di WordPress preinstallata si trova in /home/wp/disk/wordpress. La tua directory di lavoro corrente quando ti connetti per la prima volta tramite SSH è home/wp

In questa directory, non hai i permessi appropriati per avviare Git ed eseguire il tuo progetto con git pull scaricando - non lo vorresti nemmeno tu. 

Passa alla cartella di lavoro: 

Da questa directory puoi modificare le basi del tuo sito WordPress: Se ls (list) nella console, vedrete il vostro tipico albero dei file WordPress : 

ssh-9

Passo 6: Inizializzare Git in Raidboxes

Cambia le directory in wp-content/themes e creare una directory. Qui inizializzi Git e tiri il tuo Theme sviluppato localmente da GitHub. 

cd wp-content/themes

mkdir <your theme name>

cd <your theme name>

git init

Un'altra caratteristica interessante di Raidboxes: Git è già installato sul server, così come WordPress CLI (WP-CLI). L'ultima cosa da fare è inserire il tuo repository GitHub nell'albero dei file di Raidboxes WordPress. 

Tuttavia, per salvaguardare la sicurezza di Box , Raidboxes non ti permette di farlo, git push direttamente dal tuo dispositivo locale al tuo repo git. Invece, lo prendi da un servizio come GitHub. 

(Se hai già spinto il tuo progetto di stiluppo locale su GitHub, procedi al passo 8).

Passo 7: caricare il tuo Theme locale su GitHub

Dal tuo dispositivo locale, naviga nella cartella in cui è stato creato il tuo tema WordPress personalizzato. Quindi inizializza Git eseguendolo nel tuo terminale:

git init

ssh-11

Crea il tuo repo su GitHub e aggiungilo come remoto al tuo sviluppo personalizzato. Per le istruzioni sulla creazione di un repository GitHub, leggi questa documentazione.

ssh-14

Quando crei un repo, puoi scegliere tra pubblico e privato. Per i lavori su commissione, è meglio scegliere un privato. Nota che ti chiederà di aggiungere il tuo nome utente e la tua password GitHub (non la tua passphrase SSH) quando usi i comandi git push o git pull che vorrai far fuori.

Aggiungi il tuo repo GitHub come remoto per eseguire il comando git push da utilizzare: 

git remote add <the alias you choose for the remote> <the remotes address>

Come in questo esempio: 

git remote add gitHub
https://github.com/XXXXXXXXX/customWordpressTheme.git

Aggiungi i tuoi file, fai il commit e spingili nel tuo repository remoto: 

git add *
git commit -m '<your commit note>'
git push -u <the alias you gave your remote> <the name of the branch your working on>

(Se non sei sicuro di quale sia il nome del tuo telecomando, esegui il comando git remote -v off. Questo ti mostrerà tutti i nomi dei repository remoti).

$ git push -u gitHub master

Fantastico! Ora il tuo tema è online e pronto per essere inserito nel tuo sito Box . 

Passo 8: Carica il tuo tema su Raidboxes

Proprio come si aggiunge il proprio repository GitHub come repository remoto (in modo da poter spingere il proprio Theme su GitHub) ora aggiungeremo GitHub come repository remoto e spingeremo il Theme dal repository GitHub. 

Apri il terminale Git Bash in cui ti sei collegato via SSH a Raidboxes . Assicurati di trovarti nella cartella del tuo tema WordPress dove hai inizializzato Git (vedi punto 6). 

Ad esempio:

home/wp/disk/wordpress/wp-content/themes

Ora aggiungi il tuo repo GitHub come remoto. 

Puoi trovare l'indirizzo remoto su GitHub: 

ssh-3

Aggiungi il telecomando: 

git remote add <choose an alias name> <the address of your github ssh repo>

git remote add gitHub https://github.com/XXXXXX/customWordpressTheme.git

Pulle ora il repo da GitHub:

Si prega di notare: Il ramo è molto probabilmente chiamato master qui. A meno che non l'abbiate cambiato o stiate lavorando in un ramo diverso su GitHub.

git pull <alias name> <branch>

git pull gitHub master

Se il repository è privato ...

... ti verrà chiesto il tuo nome utente GitHub e la password GitHub - non la tua passphrase.

Passo 9: Attivare il tuo Theme

Congratulazioni! L'ultimo passo è quello di attivare il tuo tema WordPress. Ma perché lasciare il terminale per questo? Raidboxes ha già installato WordPress CLI. Con poche righe di codice, puoi risparmiarti la fatica di cliccare nell'interfaccia utente di WordPress. 

Esegui questo comando nel terminale: 

wp theme activate <your theme name>

Per una panoramica completa dei comandi che potete usare con WP-CLI , fate riferimento alla documentazione ufficiale di WordPress .

Se preferisci l'interfaccia utente, puoi accedere a tutti i tuoi temi dal sito Raidboxes Dashboard . Li puoi trovare sotto il punto di navigazione Plugin e Temi:

Conclusioni su SSH e sviluppo di WordPress

Se stai cercando un modo veloce, sicuro e più efficiente per sviluppare e mantenere il tuo sito web WordPress, l'utilizzo di Git e SSH è la strada da seguire. Credimi, ti chiederai presto come hai fatto a gestire un altro flusso di lavoro! 

Ma ognuno lavora al proprio ritmo e ha preferenze individuali quando si tratta del flusso di lavoro appropriato. Vi consiglio di dare una possibilità a SSH - e di seguire i passi descritti. Non si sa mai: potresti essere assolutamente entusiasta e non voler mai perdere questo flusso di lavoro! 

Grazie per aver letto. Spero che questo articolo ti abbia aiutato a impostare un flusso di lavoro adeguato che ti semplifichi la vita quando lavori con i temi personalizzati. Inizia oggi stesso e sfrutta al massimo la dashboard di Raidboxes ! 

Che domande hai per Matthias?

Sentitevi liberi di usare la funzione di commento. Vuoi essere informato su nuovi articoli e consigli sull'argomento WordPress Development? Allora seguici su Twitter, Facebook o tramite la nostra newsletter.

Ti è piaciuto l'articolo?

Con la tua valutazione ci aiuti a migliorare ancora di più i nostri contenuti. Grazie!

Scrivi un commento

Il tuo indirizzo e-mail non sarà pubblicato. I campi obbligatori sono contrassegnati da *.