HomeGuideTutorial: gestire il proprio sito Web con GIT

Tutorial: gestire il proprio sito Web con GIT

Dopo molto peregrinare nella jungla del web, sono appena riuscito a rendere gestibile uno spazio web, tramite GIT, ed eccomi qui a condividere con voi questa esperienza passo dopo passo, cercando di ridurre allโ€™osso tutti i passaggi effettuati.

Prima di tutto, cosa รจ GIT?

Immagino che se state leggendo queste righe, saprete giร  di cosa sto parlando e volete subito passare al succo dellโ€™articolo ma, per i non geek, cerco di riassumere in breve:

Git รจ un sistema di โ€œversioningโ€ nato dalla mente di Linus Torvalds (vi dice qualcosa?) ed รจ oggi tuttโ€™ora il software piรน usato nel mondo open source, in soldoni รจ un ambiente dove un dato progetto web, di qualsiasi linguaggio di programmazione, puรฒ essere gestito da un numero non definito di persone, e ogni modifica effettuata (commit) viene โ€œinviataโ€ e, previa autorizzazione, viene inclusa nel progetto padre, il tutto senza sovrascrivere le modifiche effettuate da altri. Tutto ciรฒ per creare ordine e per avere a vista dโ€™occhio un quadro piรน generale di tutte le modifiche effettuate dalla data di apertura del progetto, ad oggi. Inoltre, tutte le vecchie versioni potranno essere recuperate, come una sorta di macchina del tempo.

Passiamo alla configurazione.

Premessa:

il seguente tutorial รจ stato testato su Debian Stretch (9) e su Mac OS, in pratica ciรฒ che รจ stato fatto รจ configurare una repository su Debian (server remoto) e gestire il tutto su client locale su Mac, usando SourceTree (client gratis, che gestisce tra le altre cose, anche GIT).

Con un po di savoir-faire, il procedimento si puรฒ effettuare anche su altri sistemi operativi, in quanto GIT รจ gestito/gestibile da comandi di testo.

  • ย Installate GIT, su Debian, con il nostro fido apt-get install gitย 
  • sul server remoto, posizionatevi via terminale nella cartella dove avete il vostro malloppo di file, ed inizializate git con git init โ€”bare (la variabileย bare permette di effettuare push, altrimenti รจ soltanto โ€œleggibileโ€)

 

  • ora avrete una cartella chiamata .git , con allโ€™interno altri files e cartelle, andate in /hooksย (cd .git/hooks)
  • create un file chiamato post-receive (conย il vostro editor preferito,ย โ€œnano” o “vi” ad esempio: nano post-receive )e allโ€™interno incollate il seguente contenuto, cambiando ovviamente il percorso ed adattandolo al vostro server:
#!/bin/sh
GIT_WORK_TREE=/path/della/vostra/cartellaย git checkout -f
  • salvate il contenuto (con nano CTRL+O) e settate i permessi di esecuzione sul file conย chmod +x post-receive
  • tornate alla webroot del vostro server e aggiungete il contenuto con git add . (cโ€™รจ un punto, sรฌ)
  • siete pronti per il primo commit, eseguite con il comando git commit -m โ€˜il mio primo commit!’
  • ora andate sul vostro Mac/Pc e aprite SourceTree (o qualsiasi altro client…o via terminal!)
  • cliccate su Clone a Repository e inserite i vostri dati (io ho scelto di farlo usando SSH ma volendo si puรฒ fare anche via HTTP), dopodichรฉ vi apparirร  una finestra chiedendovi la password del vostro server. Da terminale vi basterร  scrivereย git remote add origin ssh://username@vostroserver/var/www/sitoweb

 

  • fatto ciรฒ non vi rimane altro che effettuare il fetch (in pratica il sync in locale, dei file presenti in remoto), potrete farlo da SourceTree cliccando appunto su Fetch, oppure via terminal con git fetch

Da qui in poi avrete la copia locale della vostra repository, e potrete pubblicare/modificare nuovi files usando dei commit (SourceTree ha il tasto pronto) mentre da terminale potrete usare git commit.

Buona revisions a tutti!

Ultime dal Blog