Ignorér ressourcer fra versionskontrol

Når du synkroniserer ressourcer, kan der være nogle ressourcer, du ikke vil committe over for opbevaringsstedet. Programmet indeholder to ignoreringsfaciliteter, som giver dign mulighed for at angive, hvilke ressourcer der skal udelukkes fra opdaterings- og commit-funktioner.

Den første er en global ignoreringsfacilitet, som findes på arbejdsbænken. Den anden er CVS-ignoreringsfacilitet, som læser indholdet af en særlig fil, .cvsignore, for at afgøre, hvad der skal ignoreres.

Hvorfor ignorere filer under synkronisering?

Der er mange filer, som en bruger måske ikke vil committe over for opbevaringsstedet. Eksterne editorer kan oprette midlertidige filer i projektet. Ved kompilering af .java-filer oprettes .class-filer, og på samme måde resulterer mange bygninger i binære filer. Når disse filer samles, kan de fylde temmelig meget. Desuden kan de blive genereret igen, hver gang der udføres en bygning, hvilket kan resultere i mange udgående ændringer. Typisk er dette ikke filer, som du har lyst til at dele med andre medlemmer af et team, eller som bør placeres på opbevaringsstedet.  

Den globale ignoreringsfacilitet

Arbejdsbænken indeholder en global ignoreringsfacilitet på indstillingssiden Team. Der er en liste over filmønstre, som ressourcer sammenlignes med, inden de betragtes som versionskontrolkandidater. Disse mønstre kan indeholde jokertegnene "*" og "?". "*" repræsenterer en hvilken som helst sekvens af nul eller flere tegn.  "?" repræsenterer et hvilket som helst tegn. Du kan f.eks. angive mønsteret "*~", hvilket kunne matche alle midlertidige filer, der slutter med "~". Alle filer eller biblioteker, der matcher et af mønstrene, bliver ignoreret under opdaterings- eller commit-funktioner. Når du angiver et filmønster, der skal ignoreres, kan du midlertidigt deaktivere ignoreringen af filmønsteret ved at fjerne markeringen af mønsteret på listen. Du behøver ikke at fjerne det angivne filmønster fra listen.

Mønstrene i den globale ignoreringsfacilitet sammenlignes med ressourcenavnene under en synkronisering. Det er vigtigt at bemærke, at den sti, der fører frem til ressourcenavnet, ikke inkluderes i sammenligningen. Ved filen "/sti/til/fil.txt" er det f.eks. kun "fil.txt", der sammenlignes med mønsteret. Faciliteten er ikke beregnet på at angive fuldstændige stinavne men på at angive globalt anvendelige mønstre.

Ignoreringsfaciliteten i CVS

CVS-klienten i Eclipse genkender en fil med navnet ".cvsignore" i alle biblioteker i et projekt. Det er en standardfacilitet i CVS, og mange eksisterende CVS-projekter kan indeholde denne fil.

Denne tekstfil indeholder en liste over filer, biblioteker eller mønstre. På samme måde som den globale ignoreringsfacilitet kan jokertegnene "*" og "?" være placeret i alle indgange i .cvsignore-filen. Alle filer eller underbiblioteker i det aktuelle bibliotek, der matcher et af mønstrene, bliver ignoreret. Det er vigtigt at bemærke, at semantikken i denne fil adskiller sig fra den globale ignoreringsfacilitet på den måde, at den kun gælder for filer og biblioteker i samme bibliotek som selve .cvsignore-filen. Et projekt kan indeholde én .cvsignore-fil i hvert bibliotek. Du kan få flere oplysninger ved at besøge  http://ximbiot.com/cvs/.

Du kan ignorere ressourcer, der ikke er tilføjet til CVS-styring, ved at vælge Team > Tilføj til .cvsignore på pop op-menuen til ressourcen i en af navigationsoversigterne. Dette menuvalg er også tilgængeligt i oversigten Synkronisér.