Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Checkout: estrarre dati dal repository

Utilizzare il comando checkout per creare una copia di lavoro locale
Utilizzare il comando checkout per creare una copia di lavoro locale
Link copiato negli appunti

La prima operazione per qualunque utente che voglia cominciare a lavorare su un progetto gestito su un server SubVersion è il checkout, ovvero la creazione di una copia di lavoro locale.

Tale copia è una normale cartella del filesystem che contiene i file scaricati dal server; in aggiunta, però contiene una serie di informazioni che il client SVN usa per sapere cosa fare quando viene richiesta una operazione di aggiornamento o di salvataggio delle modifiche.

La sintassi del comando di checkout è

svn checkout http://repository /local/work/path

I parametri sono abbastanza chiari: il primo rappresenta il percorso con cui raggiungere il repository e il secondo è il percorso locale in cui creare la copia di lavoro. Se tale percorso locale non viene specificato, il checkout verrà effettuato nella cartella corrente.

Nota: se non esiste, la cartella viene creata in automatico dal client SVN; se la cartella esiste già, è opportuno accertarsi che sia vuota.

Spostiamoci quindi nella cartella in cui vogliamo creare la cartella di lavoro, clicchiamo con il tasto destro e selezioniamo SVN CheckOut. Ci viene richiesto il percorso del repository e la cartella locale (per questo
campo viene proposto automaticamente un percorso che rappresenta l'unione tra la cartella in cui mi trovo e il nome del repository: va bene, per cui lo lasciamo com'è). Eseguiamo l'operazione e ci viene segnalato l'elenco dei file estratti, nonché la relativa revisione.

A questo punto abbiamo, ricreata in locale, la struttura del nostro progetto. L'icona tradizionale dei file viene sostituita da un'icona di SubVersion, che mi indica lo stato di aggiornamento.

Se abbiamo abilitata l'opzione di visualizzare i file nascosti, vediamo anche che in ogni cartella è presente una sottocartella .svn. Si tratta della cartella che contiene le informazioni di cui sopra. Tra le altre cose, vengono qui conservate le copie "originali" dei file (cioè quelle scaricate con l'ultimo checkout o update) che il client usa come confronto per rilevare le modifiche effettuate localmente; nonché le informazioni sulla revisione scaricata e sulla data e ora dell'ultimo update.

Per ora non ci addentriamo troppo nella struttura di queste cartelle nascoste: ciò che conta è che non vanno modificate né cancellate, pena la perdita delle informazioni di SubVersion e la necessità di ricreare la copia di lavoro locale.

Estrarre singoli file o cartelle

Anziché estrarre tutto il contenuto del repository, è possibile specificare un determinato file o una determinata cartella, semplicemente inserendo il percorso completo, ad esempio nel nostro caso:

svn checkout http://svn-vd.devel/repos/guidasvn/indice.txt

Su TortoiseSVN, accanto al campo dove inserire l'url del repository c'è un pulsante ("...") che avvia un pratico Repository Browser, grazie al quale possiamo scorrere le cartelle e i file presenti sul repository fino a trovare quello che ci interessa.

Anche in questo caso il percorso locale viene automaticamente precompilato, ma non comprende l'intero
percorso del repository: si limita ad aggiungere alla cartella locale il nome del file o della cartella che stiamo estraendo.

Nota: attenzione a non effettuare checkout successivi sulla stessa cartella, in caso contrario avremo la certezza di rovinare completamente la nostra copia di lavoro. Il comando giusto per aggiornare la nostra copia locale è svn
update
, che vedremo nella prossima lezione.

Ti consigliamo anche