1 / 15

RCS - Revision Control System

RCS - Revision Control System. Cos’è A cosa serve Funzionalità principali Documentazione e installazione. 1. Corso di Programmazione Internet. RCS - Cos’è. E’ un tool utilizzato durante le fasi di sviluppo e manutenzione di un programma o di un progetto

Download Presentation

RCS - Revision Control System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RCS - Revision Control System Cos’è A cosa serve Funzionalità principali Documentazione e installazione 1 Corso di Programmazione Internet

  2. RCS - Cos’è E’ un tool utilizzato durante le fasi di sviluppo e manutenzione di un programma o di un progetto Permette di automatizzare molte procedure altrimenti gestite manualmente 2 Corso di Programmazione Internet

  3. RCS - A cosa serve Versioning Gestisce la memorizzazione, il recupero, il logging delle varie versioni di un programma Locking Evita che un file possa essere modificato contemporaneamente da due persone 3 Corso di Programmazione Internet

  4. RCS - Terminologia Working file Sono i file “di lavoro” Es: i file sorgenti Library file Sono i file creati da RCS che contengono la versione più recente di un working file e altre informazioni 4 Corso di Programmazione Internet

  5. RCS - ci > ci nomefile.java crea o aggiorna il library file corrispondente. Cancella il working file. Si esegue ci ogni volta che si vuole “fissare” una nuova versione del working file. Ogni volta viene richiesto di inserire un commento che descriva brevemente le modifiche apportate 5 Corso di Programmazione Internet

  6. RCS - co > co nomefile.java recupera l’ultima versione del file e ripristina il working file. Il working file così creato non può essere modificato perché non è stato richiesto il lock. 6 Corso di Programmazione Internet

  7. RCS - locking (1/2) > co -l nomefile.java ripristina il file nomefile.java e applica il lock su di esso. Quando si esegue il lock su un file nessun altro lo può modificare (ma vi può accedere) > ci nomefile.java rilascia il lock > ci -l nomefile.java lo mantiene e non cancella il working file 7 Corso di Programmazione Internet

  8. RCS - locking (2/2) > ci -u nomefile.java rilascia il lock ma NON cancella il file > rcs -l nomefile.java esegue il lock su un file non ancora “locked” > rcs -u nomefile.java rilascia il lock > rcs -L nomefile.java abilita lo “strict locking” > rcs -U nomefile.java disabilita lo “strict locking” 8 Corso di Programmazione Internet

  9. RCS - Version Numbering Ogni versione di un file gestito da RCS ha un unico numero di versione release number.revision number che gli viene attribuito automaticamente con il comando ci. La prima versione è l’1.1, in seguito viene incrementato il revision number (1.2, 1.3, etc) Si possono attribuire nuovi numeri di versioni con l’opzione -rnumeroversione 9 Corso di Programmazione Internet

  10. RCS - recupero delle versioni precedenti > co nomefile.java recupera l’ultima versione > co -r1.2 nomefile.java recupera la versione 1.2 > co “-d1-sept-01” nomefile.java recupera la versione più recente ma precedente al 1 settembre 2001 > co -wnomeutente nomefile.java recupera la versione più recente salvata da nomeutente 10 Corso di Programmazione Internet

  11. RCS - Identification Markers Possono essere inseriti sia all’interno di codice sorgente /* This is version $Revision$ */ sia all’interno di file eseguibili: static String RCS_ID = “version $Revision$ ”; (> ident nomefile.class) Altri identificatori: $Author$ $Header$ $Locker$ $Log$ $State$ $Date$ 11 Corso di Programmazione Internet

  12. RCS - States A ogni versione può essere assegnato uno “stato”. Uno “stato” (o “state”) è una label scelta dal programmatore che indica qual è lo stato di quel particolare file. Lo stato assegnato di default è Exp. Altri esempi: Test, Rel, Fail Per cambiare lo stato di un file: >rcs -sstato nomefile.java Per recuperare l’ultima versione del file che ha quello stato: >co -sstato nomefile.java 12 Corso di Programmazione Internet

  13. RCS - Nomi simbolici A ogni file si può associare un nome simbolico. Ciò è utile nei progetti contenenti molti file per indicare quali file sono associati a una particolare configurazione. Per assegnare un nome simbolico: >rcs -nnomesimbolico:versione nomefile.java Per recuperare tutti i file che hanno un certo nome simbolico: >co -rnomesibolico RCS/* N.B.:Occorre ricordarsi il nome simbolico 13 Corso di Programmazione Internet

  14. RCS - Stati vs. Nomi simbolici 14 Corso di Programmazione Internet

  15. RCS - Installazione Per Windows: autoexec.bat: set TZ=; set LOGNAME=elisa PATH C:\UTIL\gnurcs Documentazione: www.cs.purdue.edu/homes/trinkle/RCS/#DOC 15 Corso di Programmazione Internet

More Related