How2SitoHM
Prerequisiti:
- Un account su http://git.lattuga.net/user/sign_up
- Fare amicizia con il terminale su Linux
- Avere voglia di imparare 3 comani di git
- Imparare un comando di fabric
Prerequisiti software:
- python2.7
- virtualenv2
- git
Debian-Ubuntu:
sudo apt-get install python python-virtualenv git
Arch:
sudo pacman -S python2 python2-virtualenv git
[Da qui in poi appariranno termini tecnici, non mordono, pensateli come delle pallette fuffose rosa]
La prima cosa da fare per iniziare a lavorare sul sito è creare un virtualenv per python, altro non è che una cartella sul pc nella quale valgono alcune regole che ci semplificano il lavoro.
Scegliamo la cartella in cui vogliamo lavorare, da qui in poi faccio finta che sia:
/home/svalo/eigenLab/sitoHM
Voi sostituite ogni occorrenza col vostro percorso
Per prima cosa apriamo un terminale (Menu -> Accessori -> Terminale) e ci spostiamo dentro la cartella
cd /home/svalo/eigenLab/sitoHM
E creiamo un virtualenv
virtualenv HM16
Appariranno un po' di scritte che ci informano che sta installando una versione di python dentro la cartella HM16 e vari altri componenti. Questo serve perché così possiamo lavorare installando un sacco di cose e fare un sacco di configurazioni che non "sporcano" il sistema in generale ma che hanno valore solo dentro la cartella. Una volta finito HM potremo cancellare la cartella ed il sistema tornerà com'era prima.
Poi attiviamo il virtualenv
source ./HM16/bin/activate
Per essere sicuri che tutto sia andato a buon fine dal terminale digitate
which python
Se la risposta è qualcosa di simile a
/home/svalo/eigenLab/sitoHM/HM16/bin/python
Allora tutto bene, se assomiglia a /usr/bin/python2.7 allora qualcosa non è andato bene, contatta lo smanettone più vicino :P
A questo punto abbiamo creato il nostro virtualenv e lo abbiamo attivato, sarà il nostro spazio di lavoro, ogni volta che vorremo lavorare sul sito dovremmo entrare nella cartella che abbiamo scelto e attivare il virtualenv.
Versione compatta per dalla seconda volta in poi
cd /home/svalo/eigenLab/sitoHM . ./HM16/bin/activate
Quando abbiamo finito di sviluppare e vogliamo fare altro basta scrivere nel terminale
deactivate
Prendere il codice del sito
Siamo dentro la cartella /home/svalo/eigenLab/sitoHM/ adesso prendiamo il codice del sito
Il codice del sito vive in un repository git su git.lattuga.net, lo potete recuperare col comando
git clone http://git.lattuga.net/boyska/sito-hackit-16.git
Questo sparerà un po' di messaggi e, se tutto va bene, ci ritroveremo con una bellissima cartella di sono sito-hackit-16 accanto a HM16
Ovvero dando il comando ls in /home/svalo/eigenLab/sitoHM dovremmo vedere
(HM16) /home/svalo/eigenLab/Developing/HM16/ svalo:$ ls HM16 sito-hackit-16
Ottimo adesso abbiamo il codice del sito, se entrate nella cartella sito-hackit-16 vedrete la struttura del progetto
cd sito-hackit-16
ls vi dirà cosa c'è dentro.
La prima, e unica, volta dovremo installare le dipendenze del progetto per poter lavorare al sito
pip install -r requirements.txt
Questo legge il file requirements ed installa i programmi che servono per creare il sito.
CI SIAMO! Abbiamo tutto quello che ci serve per cominciare
Sempre da dentro la cartella sito-hackit-16 diamo il comando
./develop-server.sh start &>/dev/null
Queso farà partire un mini server web il python che ci farà vedere il sito allo stato attuale all'indirizzo http://localhost:8000
Quando vorremo fermare il server python, dallo stesso terminale dal quale lo abbiamo lanciato dobbiamo dare
./develop-server.sh stop
Modificare il sito
Ok tutto figo maaaa come si modifica?
Tutto questo accrocchio serve per generare il sito, il sito vero e proprio è solo una manciata di pagine html e di css, lo trovate dentro la cartella output. Quello è ciò che effettivamente andrà poi nel server che ospita il sito.
Le pagine del sito stanno dentro
content/pages/
Possiamo modificarle e vedere cosa succede alla pagina http://localhost:8000 tutto quello che faremo rimarrà sul nostro pc, se facciamo qualche cazzata basterà dare il comando
git checkout -- nomedelfiledaripristinare
Le pagine sono scritte in markdown, le potete modificare con un editor di testo grafico tipo kate o gedit o dal terminale con vim o nano(bleah)
Se abbiamo lanciato il develop server appena salviamo le modifiche ai files questo appariranno nella pagina su localhost.
Pubblicare le modifiche
Prima di modificare o pubblicare le modifiche bisogna dare
git pull origin master
Questo serve per ricevere le modifiche che altri potrebbero aver fatto fra il momento in cui abbiamo scaricato il codice del sito e quello in cui vorremmo pubblicare le modifiche
A questo punto possiamo inserire nella storia di git le nostre modifiche.
git status
ci dice quello che è cambiato dall'ultima modifica che git conosce (Non tutti i files e non tutte le modifiche che vediamo dentro la cartella sono note a git, lui conosce solo quello che noi gli diciamo di memorizzare)
se ad esempio abbiamo modificato la pagina content/pages/info.md
git ci dirà che quel file è stato modificato
git diff
ci farà vedere le modifiche
git add content/pages/info.md
Aggiungerà le modifiche alla coda delle modifiche da aggiungere
git commit -m "Un messaggio breve ma significativo"
Aggiungerà le nostre modifiche alla storia di git
Questo aggiunge le modifiche solo alla storia presente sul nostro pc, per poterle vedere online dobbiamo mandarle repository di boyska.
Questo però lo copriremo più in là di persona