GIT – Ignorare file dai commit

Quando si usa un IDE, come nel mio caso quello di Gambas, per sviluppare un software, può accadere di avere a che fare con dei file particolarmente fastidiosi che possono rendere l’uso di un VCS molto meno pratico del normale. Questi file, nella maggior parte dei casi, sono fondamentali per il corretto funzionamento dell’ambiente di sviluppo che si sta usando e solitamente essi vengono ricreati automaticamente ogni qual volta proviamo ad eliminarli. Proprio per tale motivo un semplice
git rm -f nome_file
non basta poiché alle successive modifiche, e relativo commit, ci si ritrova questi fastidiosi file tra i cambiamenti non tracciati.

Un’ottima soluzione è quella di utilizzare il file locale exclude per indicare la lista di pacchetti da tener fuori dai rilevamenti di git. Il suo uso basilare è molto semplice e risulta un ottimo strumento anche per usi più professionali. Immaginiamo di voler escludere dai nostri commits un file di nome configurazione, uno chiamato setting.info e tutti i file di testo di backup (ad esempio file tipo main~, info~ o parameter~).

Apriamo un terminale e digitiamo:
$ gedit /home/NOME_UTENTE/PATH_PROGETTO/.git/info
sostituendo a gedit il nostro editor di testo preferito. Ci troveremo davanti ad un file contenente un testo simile al seguente:

# git ls-files –others –exclude-from=.git/info/exclude
# Lines that start with ‘#’ are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
Le suddette righe sono commenti che spiegano brevemente il funzionamento del sistema in esame. Il file è molto semplice da gestire poiché i file che non vogliamo tracciare vanno inseriti uno per riga in una vera e propria blacklist. La lista dei file va posto esattamente al seguito del testo appena visualizzato. Il file nel caso in esame avrà il seguente aspetto:

# git ls-files –others –exclude-from=.git/info/exclude
# Lines that start with ‘#’ are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
configurazione
setting.info
*~
Come possiamo vedere i primi due file sono stati indicati in maniera completa con il nome preciso mentre per quanto riguarda i file di backup è stati usato il carattere jolly * che indica un qualsiasi testo seguito dal simbolo che segue questo tipo di file.
Ovviamente il file accetta le regexp in modo da poter gestire facilmente anche progetti con tanti file molto più complessi da tracciare.

Meganalotto trasferito da Google Code a GitHub

Ho deciso di muovere i progetti verso delle piattaforme aperte più sicure e più performanti. Essendomi reso conto di essere diventato troppo google service centrico, ho iniziato a spostare tutti i servizi su altre piattaforme in modo da evitare di ritrovarmi senza nulla qualora dovesse accadere (nella speranza che non accada) di essere bannato dal circuito del celeberrimo motore di ricerca.

Si è così deciso di spostare il repository di Meganalotto da Google Code, basato su tecnologia svn, a GitHub, costruito sul sistema gestito da git. 
Ho notato che quest’ultimo è più performante (almeno così mi è perso) ed il fatto che grandi progetti del calibro di Linux, Android e Ruby on Rails sfruttino questo sistema, non può che rassicurarmi sulla sua usabilità e stabilità.
Per ora i due repository continueranno a convivere poiché l’attuale versione del software sfrutta alcuni file hostati su Google Code. Quest’ultimo inoltre contiene i pacchetti di installazione necessari ai diversi sistemi operativi. Non appena una nuova versione sarà rilasciata, il vecchio repository sarà cancellato.
Vi lascio alla nuova pagina con cui potrete seguire l’avanzamento del software.

[RISORSE] Wallpaper anti-facebook

Ebbene si, lo ammetto, sono una di quelle persone che odia sentitamente facebook per quello che è e per quello che sta facendo. Sin dal suo clamoroso boom in territorio nostrano, ho sempre guardato con disprezzo questo nuovo strumento informatico nonostante tendenzialmente sia uno che ama le novità. Ho cercato di capire come funzionasse nonostante non mi ci sia mai iscritto e non l’ho mai trovato ne interesse ne tanto meno utile. Sarà forse per la mia indole riservata o per la mia poca curiosità verso i cazzi altrui, ho sempre odiato facebook ed ancora oggi rischio seriamente di uccidere chiunque mi incontri dicendomi “Ma tu ci sei su Facebook?”
No, non ci sono e mai ci sarò. Queste sono bene o male le mie parole e lo sguardo di chi sta dall’altra parte ricalca perfettamente l’abusatore medio di questo social network: lo stupore beota. Frequentando luoghi popolati da ragazzi della mia stesa età, ho l’occasione di cogliere diverse sfumature della vita ed ho potuto notare come facebook stia ammazzando il libero pensiero messo in moto da quel poco di cervello che la nostra generazione si porta dietro a stenti e fatica. Ho avuto la sfortuna di sentire frasi scandalose dette con mirata convinzione solo perchè lette sulla bacheca di turno ed ho visto amicizie infrangersi per amicizie non date (scusate il gicoco di parole) sul network sociale. Saranno stati anche questi piccoli episodi ad accrescere il mio ribrezzo per questo sottoprodotto informatico dei giorni nostri.
Per chi come me condivide questo pensiero ho creato un semplice wallpaper che può essere scaricato, usato e modificato liberamente.
Buon uso…