Manuals

Ignorando Arquivos e Diretórios

Figura 4.32. Explorar o menu de contexto para arquivos não versionados

Explorar o menu de contexto para arquivos não versionados


Na maioria dos projetos você terá arquivos e diretórios que não deverão ser controlados. Entre eles estão arquivos criados pelo compilador, <nome_do_arquivo>*.obj, *.lst</nome_do_arquivo>, talvez um diretório de saída usado para gravar o executável. Não importa que você submeta alterações, TortoiseSVN mostrará seus arquivos não controlados, os quais serão apresentados na lista da janela de submissão. Claro, você pode optar por não mostrá-los, mas então você poderá esquecer de adicionar alguma novo arquivo de código.

A melhor maneira de se livrar desses problemas é adicionar esses arquivos na lista de arquivos ignorados do projeto. Dessa forma eles nunca serão mostrados na lista da janela de submissão, mas arquivos genuinos de código não controlados aparecerão para serem adicionados.

If you right click on a single unversioned file, and select the command TortoiseSVNAdd to Ignore List from the context menu, a submenu appears allowing you to select just that file, or all files with the same extension. Both submenus also have a (recursively) equivalent. If you select multiple files, there is no submenu and you can only add those specific files/folders.

If you choose the (recursively) version of the ignore context menu, the item will be ignored not just for the selected folder but all subfolders as well. However this requires SVN clients version 1.8 or higher.

Se você quer remover um ou mais itens da lista de arquivos ignorados, clique com o botão direito sobre os itens e selecione TortoiseSVNRemover da lista de ignorados. Você pode também acessar a propriedade svn:ignore do diretório diretamente. Isto lhe permite especificar regras gerais usando o nome dos arquivos globais, descrito na próxima seção. Leia “Configurações do Projeto” para mais informações sobre como definir as propriedades diretamente. Por favor tenha o cuidado de colocar cada regra em uma linha separada. Separá-las por espaço não funciona.

A Lista Global de Arquivos Ignorados

Outra forma de ignorar arquivos é adicionar eles para a lista global de arquivo. A grande diferença é que a lista global de arquivos ignorados é uma propriedade no cliente. Isto é aplicado parar todos projetos no Subversion, but somente no PC cliente. Em geral o melhor é usar a propriedade svn:ignore onde possível, porque pode ser aplicado para áreas específicas do projeto, e isto funciona para todos que obterem o projeto. Leia “Configurações Gerais” para mais informações.

Ignorando Arquivos Controlados

Arquivos e diretórios controlados nunca devem ser ignorados - esta é uma característica do Subversion. Se você está controlando um arquivo mas não deveria, leia “Ignorar arquivos que já estão versionados” para instruções de como não controlar o arquivo.

Padrões de Filtro na Lista de Arquivos Ignorados

Os padrões para ingorar arquivos do Subversion fazem uso do nome de arquivo global, uma técnica originalmente usada no Unix para especificar arquivos usando meta-caracteres como coringas. Os caracteres a seguir tem um significado especial:

*

Filtra por qualquer texto de caracteres, incluindo um texto vazio (nenhum caracter).

?

Filtra por qualquer caracter simples.

[...]

Filtra por qualquer um dos caracteres dentro dos colchetes. Dentro de colchetes, um par de caracteres separados por - filtra qualquer caracter léxico entre os dois. Por exemplo [AGm-p] flitra por qualquer um dos caracteres A, G, m, n, o or p.

Pattern matching is case sensitive, which can cause problems on Windows. You can force case insensitivity the hard way by pairing characters, e.g. to ignore *.tmp regardless of case, you could use a pattern like *.[Tt][Mm][Pp].

Se você quer uma definição oficial para nomes de arquivos globais, você pode encontrar nas especificações IEEE para linguagem de comando de integração Pattern Matching Notation.

Nenhum Caminho na Lista Global de Arquivos Ignorados

Você não deverá incluir caminhos no seu padrão. O padrão de filtro tem a intensão de ser usado apenas para nomes de arquivos e diretórios. Se você quer ignorar todos os diretórios CVS, apenas adicione o diretório CVS na lista de arquivos ignorados. Não é necessário especificar CVS */CVS como você faria em versões anteriores. Se você quer ignorar todos os diretórios tmp quando existirem dentro de um diretório prog mas não quer quando estiverem dentro de um diretório

TortoiseSVN homepage