Ad un alto livello, GitHub è un servizio web e cloud-based che aiuta gli sviluppatori ad archiviare e gestire il loro codice e a tracciare e controllare le modifiche. Per capire esattamente cos’è GitHub, è necessario introdurre due principi collegati:

  • Controllo versioni
  • Git

In questo articolo, offriremo prima di tutto una introduzione a questi due principi. Poi andremo più in profondità su GitHub e vedremo come potete effettivamente utilizzaare GitHub per lavorare con WordPress e/o Kinsta.

Che Cos’è il Controllo Versioni?

Il controllo delle versioni aiuta gli sviluppatori a tracciare e gestire le modifiche al codice di un progetto software. Man mano che un progetto software cresce, il controllo delle versioni diventa essenziale. Prendete WordPress…

A questo punto, WordPress è un progetto piuttosto grande. Se un core developer volesse lavorare su una parte specifica del codice di WordPress, non sarebbe sicuro o efficiente fargli modificare direttamente il codice sorgente “ufficiale”.

Invece, il controllo delle versioni permette agli sviluppatori di lavorare in sicurezza attraverso il branching (ramificazione) e il merging (fusione).

Con il branching, uno sviluppatore duplica parte del codice sorgente (chiamato repository). Lo sviluppatore può quindi apportare in modo sicuro modifiche a quella parte del codice senza influenzare il resto del progetto.

Poi, una volta che lo sviluppatore fa funzionare correttamente la sua parte di codice, può fondere quel codice nel codice sorgente principale e renderlo ufficiale.

Tutte queste modifiche vengono poi monitorate e, se necessario, possono essere ripristinate.

Cos’è Git?

Git è uno specifico sistema di controllo versioni open-source creato da Linus Torvalds nel 2005.

In particolare, Git è un sistema di controllo versioni distribuito, il che significa che l’intero codice base e la cronologia sono disponibili sul computer di ogni sviluppatore, il che permette di creare facilmente ramificazioni e fusioni.

Secondo un’indagine sugli sviluppatori di Stack Overflow, oltre l’87% degli sviluppatori utilizza Git.

Allora Cos’è GitHub?

La homepage di GitHub
La homepage di GitHub

GitHub è un’azienda a scopo di lucro che offre un servizio di hosting di repository Git basato su cloud. In sostanza, rende molto più facile per individui e team utilizzare Git per il controllo delle versioni e la collaborazione.

L’interfaccia di GitHub è abbastanza facile da usare, quindi anche i programmatori alle prime armi possano sfruttare le funzionalità di Git. Senza GitHub, l’utilizzo di Git richiede generalmente una maggiore esperienza tecnica e l’utilizzo della linea di comando.

GitHub è così facile da usare, però, che alcune persone utilizzano GitHub anche per gestire altri tipi di progetti, come scrivere libri.

Inoltre, chiunque può iscriversi e ospitare gratuitamente un repository di codice pubblico, il che rende GitHub particolarmente popolare tra i progetti open-source.

Come azienda, GitHub guadagna vendendo repository ospitate di codice privato e altri piani focalizzati sul business che permettono alle organizzazioni di gestire i membri del team e la sicurezza con semplicità. Da Kinsta utilizziamo ampiamente Github per gestire e sviluppare progetti interni.

Esplorando l’Interfaccia di GitHub

Per darvi un’idea di base di come appare l’interfaccia di GitHub, ecco il codice sorgente di WordPress ospitato in una repository GitHub:

Il codice WordPress di GitHub
Il codice WordPress di GitHub

Da qui, potete visualizzare le varie ramificazioni (branch) su cui si sta lavorando, così come i commit di qualcuno (è come “salvare” un file). A seconda di come è configurata una repository, si potrebbe anche essere in grado di creare il proprio branche fare il proprio commit.

E una volta apportate alcune modifiche, è possibile inviare il codice ad un branch facendo una pull request. Una pull request consiste fondamentalmente nel chiedere alla persona responsabile del branch di includere il vostro codice. E aiuta anche quella persona a vedere esattamente cosa avete cambiato nel codice.

Se volete modificare una parte o tutto il codice sorgente di WordPress sul vostro account in modo permanente, potete anche fare un fork cliccando sul pulsante Fork (un fork è concettualmente simile ad un branch, ma un fork è più stabile):

Un esempio di biforcazione del codice
Un esempio di biforcazione del codice

Lo stesso WordPress era originariamente un fork di b2/cafelog. Se volete maggiori informazioni su come utilizzare GitHub, la guida Hello World GitHub offre un tutorial di base per iniziare.

Come Utilizzare Git e GitHub su Kinsta

Kinsta offre un client Git così potete utilizzare SSH per tirar giù la vostra repository Git da GitHub (o altri servizi simili).

Se volete usare Git o GitHub su Kinsta, leggete questo articolo di aiuto per le istruzioni complete.

Altri Modi per Utilizzare Git e GitHub con WordPress

Molti sviluppatori di temi e plugin di WordPress ospitano il codice sorgente dei loro progetti su GitHub. Ad esempio, è possibile visualizzare il codice del page builder Elementor, il codice sorgente del tema Zerif Lite e molto altro.

Ma ci sono anche plugin WordPress che vi aiutano ad utilizzare Git con WordPress in modo più diretto.

Per esempio, VersionPress ha lo scopo di portare la potenza di Git alle normali azioni di WordPress, come aggiornare un post o installare un plugin. VersionPress aggiunge il controllo delle versioni sia per il vostro database WordPress che per i file.

VersionPress
VersionPress

WP Pusher è un altro plugin basato su Git che vi permette di distribuire temi e plugin direttamente da GitHub al vostro sito WordPress.

Come Iniziare con GitHub

Per iniziare con GitHub: