Creare patch

A volte si vuole sottoporre le proprie modifiche a revisione prima di depositarle, o non si ha accesso in scrittura al deposito (e quindi non si può depositare). CVS ha dei formati standard per condividere le modifiche nella copia di lavoro e applicarle al deposito CVS. Un file contenente queste modifiche è detto patch, e viene generato dal comando cvs diff, come le differenze nella sezione chiamata «Esaminare le differenze tra le revisioni». Condividere patch invece che serie di file consuma meno spazio, e le patch sono più facili da gestire: puoi mandare un solo file patch contenente tutte le modifiche in più file sorgente.

Cervisia dà accesso a questa funzionalità selezionando AvanzateCrea patch relativa al deposito.

Importante

L'azione Crea patch relativa al deposito crea una patch con tutte le modifiche di tutti i file nella copia di lavoro relativamente al deposito BASE. Quindi, la selezione dei file nella finestra principale ha effetto sulla patch generata.

Un'altra possibilità è selezionare un file nella finestra principale e scegliere Sfoglia registro... dal menu Visualizza, o fare clic destro sul file evidenziato e scegliere Sfoglia registro... dal menu contestuale per aprire la finestra per sfogliare i registri. Ora, seleziona la versione relativamente alla quale vuoi creare una patch come revisione «A», e premi il pulsante Crea patch.... Questo genererà una patch con le modifiche tra il file evidenziato nella tua copia di lavoro e la versione selezionata come revisione «A».

Prima di generare la patch, Cervisia mostra una finestra che permette di configurare il formato di uscita.

Figura 4.2. Schermata della finestra di patch di Cervisia

Schermata della finestra di patch di Cervisia

Formato di uscita

Sono disponibili tre formati di uscita:

Normale: un formato utilizzabile per far fare automaticamente all'editor ed un'altra copia del vecchio file corrispondente al nuovo. Nel formato d'uscita normale i caratteri < e > indicano le modifiche, e non ci sono informazioni di contesto.

Unificato: il formato più usato per scambiarsi patch. Il formato unificato usa righe di contesto oltre ai numeri di riga per indicare le modifiche. Questo rende l'applicazione delle patch più robusta. Questo formato visualizza le modifiche in forma leggibile e compatta, con un'intestazione per ogni file coinvolto, e sezioni separate per ogni modifica. Le righe di contesto disponibili per ogni modifica facilitano la lettura e le modifiche. Nel formato di uscita unificato sono i caratteri + e - a indicare le modifiche.

Contesto: presenta le stesse informazioni del formato unificato, ma in modo meno compatto. Nel formato d'uscita contestuale, le modifiche sono indicate dal carattere !.

Numero di righe di contesto:

Imposta qui il numero di righe di contesto per i formati d'uscita unificato o contestuale. Questa opzione non è disponibile per il formato d'uscita normale, in quanto non vi viene registrata nessuna informazione sul contesto. Più informazioni di contesto facilitano la lettura e rendono più precisa l'applicazione della patch, ma ne aumentano le dimensioni. Si raccomanda di usare almeno due righe di contesto per il corretto funzionamento delle patch.

Che cosa ignorare

Segna qui quali modifiche non dovrebbero essere considerate differenze alla generazione della patch.

Dopo aver impostato il formato d'uscita, Cervisia genera la patch e visualizza la finestra Salva come. In questa finestra, inserisci il nome e la posizione del file di patch.