GUIDA ALL`UTILIZZO DI ASSEMBLA.COM E TORTOISE SVN Nota

Transcript

GUIDA ALL`UTILIZZO DI ASSEMBLA.COM E TORTOISE SVN Nota
GUIDA ALL’UTILIZZO DI ASSEMBLA.COM E TORTOISE SVN
di Tobia Moretti
Nota sull’Autore
Mi chiamo Tobia Moretti, sono nato nel 1989 e sono uno sviluppatore software per professione ed uno
scrittore per passione.
Normalmente mi occupo di sistemi complessi in linguaggi di programmazione C++, C#, Java, Python e tanti
altri. Ultimamente mi occupo anche della gestione del sito ThailandiaNews, in qualità di WebMaster (non
sono l’autore dei contenuti).
Chiunque possa essere interessato potrà trovare il mio profilo professionale su Linkedin al seguente indirizzo:
https://it.linkedin.com/in/tobia-moretti-05bb7a97
Di fronte all’atroce dilemma (“cancellare o non cancellare? E se lo voglio recuperare, come potrò fare?”) della
mia ragazza, anch’essa scrittrice per passione, ho trovato il modo di coniugare uno strumento professionale
in uso in tutte le aziende IT con la necessità di gestire il versioning di un manoscritto. Ho scritto questa guida
per tutti i “non addetti ai lavori”, ossia tutte quelle persone appassionate di scrittura che non hanno la fortuna
di lavorare nel mio campo.
Spero possa essere utile a tutti voi come lo è stato per me e per la mia ragazza.
Introduzione
Al fine di gestire al meglio i tuoi progetti e di poterti aiutare rapidamente in caso di difficoltà, resterò come
membro del team di “sviluppo” fintanto che lo riterrai necessario.
In due parole, ti spiego che cos’è Assembla e, soprattutto, cos’è SVN.
Il sistema Subversion (meglio conosciuto come SVN) è stato ideato per consentire di mantenere uno storico
delle modifiche fatte ad un software. In realtà, questa sua “capacità” può essere facilmente sfruttata per
definire uno storico delle modifiche di ogni file. Ciò può essere infinitamente utile ad uno scrittore, poiché gli
consente di fare un “rollback” nel caso in cui si accorga che parte di ciò che ha scritto/modificato ha
pesantemente peggiorato la storia che sta scrivendo. Come, ti verrà spiegato a breve.
Assembla è un sito che consente di tenere un repository privato e gratuito (fino a 500 MB) dei propri progetti
SVN. Ciò lo rende il modo migliore in assoluto, per uno scrittore, per “conservare” ed editare i propri scritti.
Sul tuo account è abilitata la cifratura a 128 bit dei file salvati. Ciò implica un elevatissimo standard di
sicurezza. Sono presenti molte varianti e personalizzazioni.
Tortoise SVN
Questo è il software che dovrai scaricare ed installare per poter gestire i tuoi file su Assembla.
Puoi scaricare il software da questo indirizzo: http://tortoisesvn.net/downloads.html
ATTENZIONE: controlla se il tuo pc ha un’architettura a 64-bit o a 32-bit. Se scarichi la versione errata, il
sistema fallirà l’installazione. Per controllare questo dato segui il percorso Pannello di controllo\Tutti gli
elementi del Pannello di controllo\Sistema e controlla esattamente ciò che ti indico nell’immagine qui sotto.
Una volta appurato quale sia la tua architettura, puoi prelevare l’installer direttamente a questi indirizzi:
Versione 32-bit
Versione 64-bit
Esegui l’installazione come ogni altro software.
Fatto ciò, all’interno della tua cartella Documenti crea una cartella chiamata AssemblaSVN. Puoi chiamarla
come preferisci, ma per semplicità ti consiglio questo nome. Io ho sul mio pc una cartella che si chiama
Project. A questo punto, entra nella cartella AssemblaSVN che hai appena creato e fai click con il tasto destro
del mouse. Dovrebbe presentatisi il menù come nell’immagine qui sotto.
Se tutto ha funzionato a dovere, dovresti vedere le due opzioni SVN Checkout… e TortoiseSVN.
Bene! Siamo pronti per cominciare.
Clicca ora con il mouse su SVN Checkout…, quindi inserisci
(https://subversion.assembla.com/svn/<project-name>/) come mostrato in figura.
questo
indirizzo
ATTENZIONE: sostituire <project-name> con il nome del vostro progetto Assembla.
Premi OK e attendi.
Al termine dell’operazione vedrai comparirà questa finestra.
All’interno troverai le tue cartelle.
Aggiunta/Cancellazione/Modifica di file/cartelle via SVN
Tramite il sistema SVN puoi agevolmente aggiungere/cancellare/modificare file.
ATTENZIONE: il file/cartella a cui è stato modificato il nome non è considerato un file modificato, bensì un
file nuovo. Un file è considerato modificato se e solo se il suo contenuto è stato modificato. Una cartella è
considerata modificata se e solo se il suo contenuto è stato modificato. Nel caso in cui i file/cartelle non siano
stati modificati, il comando SVN Commit di cui parleremo ora NON mostrerà tali file/cartelle come
file/cartelle da aggiornare.
Tutte le operazioni di aggiunta/modifica e cancellazione possono essere fatte tramite il comando SVN
Commit.
Per utilizzare questo comando, entriamo nella cartella in cui abbiamo modificato i file/cartelle.
Visualizziamo il menù contestuale con un click destro del mouse, come segue.
Clicchiamo su SVN Commit e visualizziamo la seguente finestra, che mostra le modifiche che sono state
effettuate.
Questa finestra fornisce alcune importanti informazioni:
- Status: ci indica come il sistema SVN sta riconoscendo i file e le cartelle che fanno parte della cartella
in cui abbiamo effettuato il comando SVN Commit. In particolare, possiamo riconoscere alcuni valori:
o Missing: indica che un file presente su SVN (ossia salvato su Assembla) NON è presente nella
nostra cartella.
o Non-Versioned: indica che un file presente nella nostra cartella NON è presente su Assembla.
o Added: indica che un file presente nella nostra cartella sta per essere aggiunto in Assembla.
o Modified: indica che un file presente in Assembla è stato modificato nella nostra cartella e
verrà aggiornato.
- Message: ci consente di inserire un messaggio, al fine di ricordare meglio quali modifiche sono state
effettuate. La lunghezza minima del messaggio è 10 caratteri.
Per aggiungere file/cartelle, selezioniamo i file/cartelle con status Non-Versioned e clicchiamo con il tasto
destro.
Ovviamente, a questo punto clicchiamo su Add... e vedremo comparire una finestra che mostrerà tutti i file
che sono stati taggati per essere aggiunti. Premiamo OK.
Un’ulteriore finestra ci mostrerà che l’operazione è stata eseguita. Premiamo OK.
Nella nostra finestra riassuntiva, vedremo che lo status è stato modificato da Non-Versioned a Added.
Per cancellare un file, la procedura è egualmente semplice.
Click con il destro, dopo aver selezionato i file da cancellare.
Premiamo su Delete.
In questo caso, lo stato verrà semplicemente aggiornato da Missing a Deleted.
Aggiungiamo un commento nella casella di testo in alto e premiamo OK.
Una finestra di conferma ci indicherà quali operazioni sono andate a buon fine.
Clicchiamo OK, il sistema ha aggiornato per noi i file su Assembla, non dobbiamo nemmeno sbatterci per
controllare.
Revert di una modifica
Nel caso in cui ci si accorga di aver fatto qualche grossolano errore e si desideri ripristinare una versione
precedente sul nostro pc, è bene sapere che ciò è possibile.
ATTENZIONE: questo implica che i file e le cartelle sul nostro pc verranno riportati indietro alla versione
scelta, mentre i file su Assembla resteranno all’ultima versione committata (questo termine vuol dire “ultima
volta che abbiamo usato la funzione SVN Commit”). Alla nostra prossima commit i file verranno aggiornati
con le modifiche apportate ed un numero di version superiore, divenendo così “l’ultima versione
committata”.
Vediamo come procedere.
Accediamo alla cartella ove desideriamo iniziare l’operazione di revert.
Clicchiamo con il tasto dx e scegliamo sul menù Tortoise SVN > Show log.
Selezioniamo la versione che ci interessa tra quelle disponibili in alto.
La più recente è la prima dell’elenco, quindi sceglieremo dalla seconda in poi.
Facciamo click con il tasto destro e scegliamo Revert to this revision.
Ovviamente riceveremo un messaggio di conferma. Clicchiamo Revert.
Quando l’operazione sarà terminata, riceveremo una schermata con un report dei file modificati.
Possiamo ora andare a scrivere su un file “vecchio”, dove ci fa più comodo. Quando avremo eseguito una
commit il nostro file modificato risulterà “più recente” per il sistema che, quindi, aggiornerà l’ultima versione
salvata su Assembla.
Update del repository
Nel caso un altro utente agisca sul repository, oppure nel caso in cui noi abbiamo scelto di fare un rollback e
ora di avanzare nuovamente di versione, esiste una funzione specifica che ci consente di arrivare
direttamente all’ultima versione dei file/cartelle disponibili su Assembla.
Vediamo ora come.
Clicchiamo con il tasto dx nella cartella principale del progetto (per noi era AssemblaSVN) e selezioniamo
SVN Update.
Dopo qualche secondo il sistema ci mostrerà una finestra contenente tutti i file che sono stati modificati.
Nel mio caso nessuno, poiché la mia cartella era già aggiornata.
Assembla.com
Assembla è un sito ricchissimo di funzioni. La maggior parte di esse è pensata per team di molte persone, che
lavorano insieme e contemporaneamente sugli stessi file. Inutile dire che questo non è il nostro caso.
L’unico motivo per cui noi lo sfruttiamo è che ci fornisce strumenti estesi per il versioning, ossia la possibilità
di gestire le versioni dei nostri file e, se necessario, recuperare vecchie versioni senza sforzo.
Ti spiegherò, pertanto, solo le funzioni che vale la pena conoscere. Ti sconsiglio di cercare di modificare gli
altri settings, poiché potrebbero succedere davvero grossi casini. Io stesso sudo freddo quando metto mano
ad alcuni di essi, quindi se non ti spiego come sistemare alcune cose non lo faccio per “tarparti le ali”, ma
semplicemente perché è roba che non mi fido a toccare nemmeno di persona e, se possibile, evito
accuratamente.
NOTA BENE: su Assembla giocare a “proviamo e vediamo che accade” potrebbe causarti/mi/ci problemi per
una-due settimane, ossia il tempo necessario a capire come sistemare. Fortemente sconsigliato questo
approccio.
SVN
Questo tab ci consente di vedere i file che abbiamo attualmente sul repository, chi ha eseguito l’ultima
commit ed il messaggio che è stato settato nei log. E’ relativamente inutile, poiché in questo repository
lavorerai quasi sempre da sola, quindi saprai perfettamente cosa hai modificato e quando.
L’unica cosa rilevante da sapere è che nei settings è presente la possibilità di rendere “più private” alcune
cartelle. In questo momento, tutte le cartelle sono tue e nessuna di esse può essere scritta da altri. Nemmeno
da me.
Stream
Questo tab ci consente di vedere quali attività sono state intraprese dagli utenti.
Dato che qui ci lavorerai tu, ed io se ad un certo punto dovesse giungermi una richiesta di aiuto, possiamo
presupporre che anche questo tab sia quasi totalmente inutile.
Unica cosa che posso consigliarti è settare Email Notifications come segue. In tal modo riceverai ogni giorno
a mezzanotte circa un report contenente le modifiche che sono state apportate al progetto.
Team
Hai già appreso come usarlo. Attenta a non far casino qui. È sempre bene che ci siano 2 Owner del progetto
proprio per evitare ciò che è successo oggi. Se avessi cliccato per sbaglio su di me e poi su di te, mettendo
entrambi a Member, avremmo buttato tutto e saremmo stati costretti a ricominciare da capo… io e Chiara
siamo entrambi Owner del suo progetto, proprio per evitare questi inconvenienti. Se preferisci avere Chiara
come secondo Owner, invitala e poi dalle i privilegi di Owner, quindi abbassa il mio livello.
Admin
Questi sono i tools amministrativi.
Tools riguarda solo la possibilità di usare SVN e pertanto non c’è niente da modificare.
Appearence cambia un po’ il look del progetto … poca roba e, alla fine, tutta fuffa inutile, a mio avviso.
Security permette di impostare l’accesso in lettura/scrittura agli utenti. Attualmente, solo gli Owner hanno
diritto di lettura e solo tu hai diritto di scrittura.
Il resto è noia … attenta a non premere mai questo pulsante
Sennò perdi tutto…
Buon divertimento!
Tobia Moretti