Gestione revisioni Software
Requisiti
La metodologia che si vuole introdurre deve soddisfare i seguenti punti:
- utilizzo di RCS
- semplicita' di utilizzo (pochi e chiari comandi)
- mantenimento delle attuali metologie di lavoro
- mantenimento della struttura attuale dei programmi
- asscociazione di tutti i sorgenti di un rilascio con un singolo nome simbolico
- risparmio di spazio utilizzato su disco
- protezione intrinseca tra gli utenti
- modifica contemporanea dello stesso sorgente da piu' utenti
Perche' RCS
RCS e' uno standard emergente per la gestione di revisione di files di testo.
Esiste una versione, sviluppata da GNU, di pubblico dominio e a costo zero per l'utente.
Semplicita' di utilizzo
Gli unici nuovi comandi che il programmatore deve utilizzare sono i seguenti:
Associazioni
Viene associato ad un nome simbolico l'insieme dei sorgenti che compongono il rilascio.
Questo permette in qualsiasi momento di rigenerere un nuovo rilascio.
Protezione tra utenti
Utilizzando i meccanismi di protezione di Unix e RCS associati alla figura dell'amministratore di progetto, si preserva la consistenza dei sorgenti.
Solamente l'amministratore del progetto ha l'autorita' di cancellare o aggiornare i files del repository ufficiale.
Modifiche contemporanee
In progetti con molte anomalie, per evitare tempi di risoluzione troppo lunghi, e' necessario che piu' persone possano modificare gli stessi sorgenti contemporeneamente.
L'amministratore ed i programmatori devranno eseguire l'integrazione con molta attenzione.
Gestione modifiche
In fase di creazione delle direttrici di un progetto si deve creare un file di configurazione che indica:
- se il progetto consente modifiche contemporanee sullo stesso file
- gli utenti abilitati
Il file deve essere rcs.cnf e deve essere nella home directory home dell'amministratore del progetto.
Figure
Vengono definite due figure tipo:
- programmatore
- amministratore
Per programmatore si intende una persona che puo' operare sul codice sorgente del progetto.
Per amministratore si intende la persona che ha il compito di eseguire la configurazione dell'ambiente di lavoro e controllare/gestire le fasi di integrazione e rilascio di revisioni.
Il rilascio di una revisione puo' essere effettuato solamente da parte dell'amministratore.
L'amministratore e i programmatori appartengono allo stesso gruppo.
La login dell'amministratore deve essere admXXXXX, il nome del gruppo deve essere svlXXXXX, dove XXXXX e' l'identificativo del progetto.
La login del programmatore deve essere uguale al suo cognome.
Se un programmatore puo' lavorare su differenti progetti, con il comando newgrp deve selezionare
il progetto su cui intende lavorare.