Durante la sincronizzazione delle risorse, è possibile che ve ne siano alcune di cui non si desidera eseguire il commit nel repository. Sono disponibili due funzioni di esclusione, che consentono all'utente di specificare le risorse da escludere dalle operazioni di aggiornamento e di esecuzione del commit.
La prima è una funzione di esclusione globale, fornita dal workbench. La seconda è la funzione di esclusione CVS, che legge i contenuti di filtri speciali .cvsignore per determinare cosa escludere.
Esistono diversi file per i quali l'utente può non desiderare l'esecuzione del commit nel repository. Ad esempio, editor esterni possono creare file temporanei nel progetto. La compilazione di file .java crea file .class e, viceversa, molte operazioni di generazione creano file binari. L'insieme di questi file potrebbe avere dimensioni eccessive. Inoltre, tali file potrebbero essere nuovamente generati, qualora venga eseguita una generazione, determinando numerose modifiche in uscita. Generalmente, non è necessario condividere questi file tra i membri di un team o conservarli nel repository.
Una funzione di esclusione globale viene fornita dal workbench attraverso la pagina delle preferenze Team.
Viene fornito un elenco di modelli di file con i quali le risorse vengono
confrontate prima di essere considerate come adatte al controllo versioni.
Questi modelli possono contenere i caratteri jolly "*" e "?". Il
modello "*" rappresenta qualsiasi sequenza di zero o più caratteri. "?"
rappresenta un solo carattere. Ad esempio, è possibile specificare un
modello "*~", come corrispondenza per qualsiasi file temporaneo che termina con
"~". Tutti i file o le directory che corrispondono a uno qualsiasi
dei modelli verranno ignorati nelle operazioni di aggiornamento o commit.
Se si specifica un modello da ignorare, è possibile disabilitare temporaneamente l'esclusione del modello file
deselezionandolo dall'elenco; non è necessario eliminare il modello file specificato
dall'elenco delle esclusioni.
I modelli nella funzione di esclusione globale sono confrontati con i nomi
delle risorse durante l'operazione di sincronizzazione. È importante
notare che il percorso che conduce al nome della risorsa non è incluso
nell'operazione di ricerca della corrispondenza. Ad esempio, per il file
"/path/to/file.txt" viene confrontata con i modelli solo la stringa
"file.txt". Questa funzione non è intesa per la specifica di nomi di percorso completi, ma per la
specifica di modelli applicabili globalmente.
Il client CVS Eclipse riconosce un file denominato ".cvsignore" in
ogni directory di un progetto. Questa è una funzione CVS standard e
molti progetti CVS esistenti potrebbero contenere questo file.
Questo file di testo è composto da un elenco di file, directory o modelli.
Come per la funzione di esclusione globale, i caratteri jolly "*" e "?"
possono essere presenti
in qualsiasi voce del file .CVSignore. Tutti i file o le sottodirectory
della directory corrente che corrispondono a uno qualsiasi dei modelli verranno
ignorati. È importante notare che la semantica di questo file è diversa
da quella della funzione di esclusione globale, in cui si applica solo a file e
directory presenti nella stessa directory dello stesso file .cvsignore.
Un progetto può contenere un file .cvsignore in ciascuna directory. È
possibile trovare ulteriori informazioni sul sito http://www.cvshome.org.
Le risorse non aggiunte al controllo CVS possono essere ignorate selezionando Team > Aggiungi a .CVSignore dal menu di scelta rapida della risorsa contenuta nel pannello di selezione. Questa opzione di menu è disponibile anche nella vista Sincronizzazione.