atom e git clone

Ho recentemente installato su un mio piccolo server gogs, (vedi qui) e ho avuto la necessita’ di impostare atom per gestire i miei repo.

Per importare (git clone) un Repository si usa la tab di GITHUB e si inserice l’url del proprio gogs.

Molto semplice se il repository e’ pubblico, per i repository privati invece la forma dell’url diventa:

https://utente:password_su_gogs@server_gogs/utente/repo.git

in pratica si aggiunge subito dopo https (o http) le credenziali da usare.

Gia’ in https credo che sia fare una cavolata per la sicurezza, in http peggio. Diciamo che non lo farei dalla wifi del bar 🙂

gogs, il server git personale

Ogni tanto scrivo due righe di codice, bash per lo piu , ma anche un po di C per arduino e … basta 🙂

Piu per curiosita che per vera necessita ho installato su un piccolo serverino GOGS e mi stupisce quanto semplice sia stato farlo funzionare.

La mia installazione ora la potete trovare su:

https://git.baviero.it

Di seguito alcune cose utili che ho fatto io per farlo andare, ovviamente una macchina Linux (debian):

creato utente apposito

adduser --disabled-login --gecos 'Gogs' git



scaricato ultima versione


wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz


scompattata e messa nella home del nuovo utente, cambiando l’owner ovviamente



chown git:git /home/git/gogs -R



creato sul database mysql un utente e un database appositi (vedi come)

Insegnato a apache che, se arriva traffico http indirizzato per git (vedi tu dove lo hai) deve essere rigirato internamente alla porta 3000 (perche’ gogs girerebbe anche senza apache)
Per fare questo ho aggiunto un file in /etc/apache2/sites-available contenente questo:



<VirtualHost *:80>
       ServerAdmin utente@dominio
       ServerName git.dominio
#        ServerAlias altramaniera.dominio
       ProxyRequests Off

       <Location />
               ProxyPreserveHost On
               ProxyPass http://localhost:3000/
               ProxyPassReverse http://localhost:3000/
       </Location>
    # Uncomment the line below if your site uses SSL.
    #SSLProxyEngine On
</VirtualHost>


Importante, in molte configurazioni di apache, e’ aggiungere il .conf alla fine del nome file tipo:



gogs_dominio.conf



perche altrimenti non lo considera quando gli si dice di usarlo con


a2ensite gogs_dominio.conf

aggiungere il modulo

a2enmod proxy_http

poi si riavvia apache

systemctl restart apache2

adesso si puo semplicemente avviare gogs entrando nella directory scompattata prima

./gogs web

se tutto e’ a posto andando su git.dominio apache dovrebbe rigirare il traffico alla porta 3000 e si vede la pagina di confgurazione iniziale.

poi, buon divertimento

Ah , una altra cosa, se si vuol far partire come servizio

https://raw.githubusercontent.com/gogits/gogs/master/scripts/ini
t/deb

inserire il codice in /etc/init.d/gogs

chmod +x gogs

sistemare il file dove serve e

service gogs status
service gogs start
update-rc.d gogs defaults
update-rc.d gogs enable

mysql – 4 comandi

Ultimamente mi capita d chiacchierare con mysql.

Non lo conosco per nulla e soltamente mi basta creare un utente e un database per usarli in qualcosa come wordpress.

Aggiungo qui di seguito 4 comandi che mi capita di dover cercare perche, ovviamente, non ricordo mai.

ACCEDERE A MYSQL

mysql -u root -p 


CREARE UTENTE

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password';

CREARE DATABASE

CREATE DATABASE IF NOT EXISTS new_db; 

AGGIUNGERE I PERMESSI AL DATABASE PER L’UTENTE

GRANT ALL PRIVILEGES ON new_db.* TO 'newuser'@'localhost'; 

RIMUOVERE DATABASE

DROP DATABASE database;

VEDERE COSE

SHOW GRANTS FOR 'newuser'@'localhost'; 
SHOW CREATE DATABASE newuser; 

CAMBIO PASSWORD

ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'NEW_USER_PASSWORD';