Subclipse svn: ignore


172

Eu sou novo no Eclipse. Estou usando o subclipse para conectar ao meu SVN. Existem algumas pastas e arquivos que eu gostaria de adicionar ao svn: ignore, mas estão acinzentados. Existe uma maneira fácil de fazer com que o subclipse ignore arquivos e diretórios?

subclipse

Respostas:


280

Você não pode svn: ignorar um arquivo que já foi confirmado no repositório.

Então você deve:

  1. Exclua o arquivo do repositório.
  2. Atualize seu projeto (a cópia de trabalho) para a revisão principal.
  3. Recrie o arquivo no Eclipse.
  4. Defina svn: ignore no arquivo via Team-> Add to svn: ignore.
  5. Reinicie o eclipse para refletir as mudanças.

Boa sorte!


43
Bem, de fato. Esta não é uma solução. Tenho o mesmo problema e meus arquivos e pastas que quero ignorar não estão sob controle de versão. Ainda não posso ignorá-los porque o svn: ignore está acinzentado.
Jagger

3
@ Henrik é muito tempo, mas você pode me dizer o que devo fazer se não quiser um arquivo, como meu arquivo database.properties, que já está no repositório e não será enviado ao repositório no commit.
Khizar

12
@Jagger: a pasta pai tem que ser já no SVN para ser capaz de definir a propriedade svn: ignore
mmoossen

5
Também atualize para HEAD
ViliusK

1
Depois de fazer o que é mencionado na solução, selecione a pasta e use o atalho (Ctrl + Alt + I) para adicioná-lo a ser ignorado. Não sei por que isso funciona e o menu não, pode ser um bug.
Andrei B.

19

Consegui fazer isso usando o TortoiseSVN diretamente do Windows Explorer:

Clique com o botão direito do mouse no arquivo para ignorar-> TortiseSVN->Delete and add to ignore list

Eu tive que fechar e reabrir o projeto no Eclipse, trabalho feito :)


2
TortoiseSVN não é Subclipse.
Muneeb Mirza

Corrigir. Não é.
Robert Swift

17

Parece que o Subclipse permite apenas adicionar uma pasta de nível superior para ignorar a lista e não subpastas. Não sei por que funciona dessa maneira. No entanto, descobri, por tentativa e erro, que se você adicionar diretamente uma subpasta ao controle de versão, permitirá adicionar outra pasta no mesmo nível à lista de ignorados.

texto alternativo

Por exemplo, consulte a figura acima, quando eu queria ignorar a pasta webapp sem adicionar src , o subclipse não estava me permitindo fazer isso. Mas quando adicionei a pasta java ao controle de versão, o "add to svn: ignore ..." foi ativado para o webapp .


Estranho, mas isso funcionou para mim também; se você cometer um erro e 'Adicionar' a pasta superior de um novo repositório SVN, poderá clicar com o botão direito do mouse em 'Equipe> Desconectar ... "e escolher excluir as meta informações do SVN.
Daniel Sokolowski

Acabei de testar isso e posso confirmar que funciona. Isso parece loucura e, possivelmente, devido a um bug ou desenho erro, mas ele funciona ...
Stephane Grenier

Melhor solução, de longe. Solução aceita não faz sentido!
Albert

9

Se você estiver tentando compartilhar um projeto no SVN com o Eclipse pela primeira vez, convém evitar que certos arquivos sejam confirmados. Para fazer isso, vá para Preferências-> Equipe-> Recursos ignorados. Nesta tela, você só precisa adicionar um padrão para ignorar o tipo de arquivo que não deseja confirmar.

Preferências do Eclipse


6

Trabalhando com Subclipse no Eclipse Indigo Service Release 2

Eu havia comprometido pastas com arquivos e logs temporários sob / src no repositório SVN. E depois de perceber, me vi na mesma situação com um "svn: ignore" acinzentado

Encontrei a seguinte solução:

1. Excluí a pasta da minha fonte de projeto

2. Equipe -> Confirmar ... sem a pasta

3. Recriou a pasta de volta na árvore do projeto

Agora eu era capaz de usar "Equipe -> Adicionar ao svn: ignore ..."


3

Este é apenas um WAG, pois não sou um usuário do Subclipse, mas você garantiu que as pastas que contêm o que você está tentando ignorar foram adicionadas ao SVN? Você não pode svn: ignorar algo dentro de uma pasta que não esteja sob controle de versão.


sim, a pasta contendo está no SVN
KevMo

3

O que funcionou para mim foi o seguinte: (eclipse 3.3.6 Subclipse 2.4)

  • defina a propriedade svn: ignore via tortoise: (.settings .classpath .project target .apt_src um item em uma linha)
  • excluiu o projeto do eclipse
  • novo check-out do svn
  • importar o projeto no eclipse (a simples reimportação do projeto no eclipse não funcionou para mim)

2

Acabei de descobrir como fazer isso:

Parece que quando você adiciona uma pasta pai ao controle de versão, o Eclipse adiciona todas as subpastas. Depois que as subpastas são adicionadas ao controle de versão, não é possível ignorá-las.

Veja como fazê-lo:

Clique com o botão direito do mouse na pasta de nível superior e adicione ao controle de versão Clique com o botão direito do mouse na pasta filho que você deseja ignorar, reverta Clique com o botão direito do mouse na pasta filho que deseja ignorar, svn: ignore (que estará disponível agora)


Foi isso que finalmente ajudou. Obrigado.
Johanna

1

Para ignorar certos arquivos ou desativar a ignição, você pode usar as preferências do eclipse -> Equipe -> Recurso ignorado. Marque ou desmarque os recursos que deseja rastrear.


0

Isso é bastante frustrante, mas é um problema de contenção (as pastas .svn acompanham também os arquivos ignorados). Qualquer item que precise ser ignorado deve ser adicionado à lista de ignorados da pasta pai imediata.

Então, eu tinha uma nova subpasta com um novo arquivo e queria ignorá-lo, mas não consegui fazê-lo porque a opção estava acinzentada. Eu o resolvi enviando a nova pasta primeiro, que eu queria (era uma pasta de cache) e, em seguida, adicionando esse arquivo à lista de ignorados (da nova pasta adicionada ;-), tendo a chance de adicionar um padrão em vez de um único arquivo.


0

Mais uma coisa ... Se você já ignorou esses arquivos através do Eclipse (com Equipe -> Recursos ignorados), precisará desfazer essas configurações para que os arquivos sejam controlados pelo Subclipse novamente e a opção "Adicionar ao svn: ignorar" reaparecerá.


0

Caso você esteja usando o TortoiseSVN e o arquivo já esteja confirmado, vá para a pasta do projeto de arquivos, clique com o botão direito do mouse no arquivo / pasta que deseja ignorar, TortoiseSVN -> Unversion e adicione à lista de ignorados. Em seguida, você exclui a pasta / arquivo (clique nela e pressione DELETE no teclado), clique com o botão direito do mouse na pasta do projeto, -> SVN Commit ... Isso excluirá a pasta do repositório .... Agora você pode criar sua pasta / arquivo novamente e depois será ignorado.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.