Avete l’impressione di avere troppo codice sparso per il vostro SSD? Volete condividere elaborati e cartelle piene di codice che non toccate da anni? Odiate GitHub? Un buon backup del vostro codice tramite Git potrebbe fare al caso vostro.
Gitea è un progetto open source che ti permette di creare la tua istanza personale di Git server, accessibile con una interfaccia online che ricorda molto quella di Gitlab o Github. In questo post, andremo ad illustrare come è possibile installare Gitea e incominciare a caricare i vostri progetti.
Gitea si prefigge di essere il miglior applicativo per velocità, portabilità e leggerezza per iniziare a hostare un servizio Git. Con il linguaggio di programmazione Go, è possibile ottenere questo dato che supporta la distribuzione di binari indipendenti dall’architettura che si vuole ottenere. Questo include Linux, macOS e Windows, ma anche altre architetture come ARM e PowerPC.
Come caratteristiche principali troviamo:
Come requisiti, Gitea non necessita di particolari configurazioni hardware. Sono sufficienti 2 core CPU e 1 GB di RAM per un server Git adatto ad un piccolo team (10 utenti), anche se i requisiti minimi funzionali sono 256 MB di memoria libera e qualche GB su SSD. Un Raspberry Pi 3 potrebbe fare al caso vostro.
Scarichiamo l’ultima versione di Gitea tramite wget:
wget -O gitea https://dl.gitea.io/gitea/1.15.9/gitea-1.15.9-linux-amd64
chmod +x gitea
Verifichiamo il binario scaricato, utilizzando gpg. Questo consente all’utente di verificare l’integrità del binario e soprattutto che il binario provenga esclusivamente dal team Gitea.
gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
gpg --verify gitea-1.15.9-linux-amd64.asc gitea-1.15.9-linux-amd64
Accertiamoci di avere installato la versione corretta di Git.
git --version
Infine, creiamo un nuovo utente adibito solo a Gitea chiamato git. In questo modo, Gitea non sarà eseguito dal nostro utente (che potrebbe avere privilegi elevati), ma da git con permessi solo alla cartella in cui ci saranno i file di Gitea.
adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
Creiamo le cartelle per Gitea:
mkdir -p /var/lib/gitea/{custom,data,log}
Impostiamo correttemente i permessi per il nuovo utente creato git.
chown -R git:git /var/lib/gitea/
chmod -R 750 /var/lib/gitea/
Creiamo una nuova directory che conterrà i file di configurazione per gitea.
mkdir /etc/gitea
chown root:git /etc/gitea
chmod 770 /etc/gitea
È buona norma impostare i permessi a 640 (ovvero di sola lettura) dei file di configurazione dopo che il server di Gitea ha finito con l’installazione.
Opzionale: imposta la directory di Gitea attraverso il comando export GITEA_WORK_DIR=/var/lib/gitea/.
Copiamo il binario di gitea, tramite il comando cp gitea /usr/local/bin/gitea ed eseguiamolo.
GITEA_WORK_DIR=/var/lib/gitea/ /usr/local/bin/gitea web -c /etc/gitea/app.ini
Molto semplice e indolore! Il server di Gitea vi aspetterà sulla porta 3000 (di default) per iniziare la configurazione. Seguite le istruzioni e Gitea vi guiderà in modo autonomo al mondo di Git!
Vi rimando alla documentazione di Gitea per ulteriori informazioni sul progetto.