Pergunta

Ao avaliar Visual Studio 2010 Beta 2, vejo que no diretório convertido, minha vcproj arquivos tornou-se vcxproj arquivos. Há também vcxproj.filter arquivos ao lado de cada projeto que parecem conter uma descrição da estrutura da pasta (\ Arquivos de origem, \ Arquivos de cabeçalho, etc.).

Você acha que esses arquivos de filtro deve ser mantido por usuário, ou eles devem ser compartilhados em todo o grupo dev e verificados em SCC?

Meu pensamento atual é para verificá-los, mas gostaria de saber se existem quaisquer razões para não fazer isso, ou talvez boas razões por que eu deveria definitivamente verificar-los.

A vantagem óbvia é que as estruturas de pastas irá corresponder se eu estou olhando para máquina de outra pessoa, mas talvez eles gostariam de reorganizar as coisas logicamente?

Foi útil?

Solução

As versões anteriores do Visual Studio (pelo menos versões 6.0 e 2008) armazenar essas informações em seu próprio arquivo de projeto (.DSP e .vcproj arquivos, respectivamente), o que naturalmente é bom para adicionar ao SCC.

Não consigo pensar em nenhuma razão para não incluir este arquivos .filter em SCC

Outras dicas

Nós intencionalmente puxou o .filter. Informações sobre o arquivo fora do .vcproj quando traduzido para o formato .vcxproj MSBuild. Uma das razões é exatamente o que você disse, que os filtros são puramente uma visão lógica, e diferentes membros da equipe pode querer diferentes pontos de vista. A outra é que, por vezes, a construção está configurado para verificar o timestamp do arquivo de projeto, e desencadear uma reconstrução se ele mudou - porque isso pode significar que existem diferentes arquivos de origem para construir, ou configurações diferentes, etc. eu não recordação se nós realmente enviado com a construção trigging dessa maneira, mas a ideia era que não queria provocar uma reconstrução simplesmente porque os filtros mudado, como eles não afetam a compilação.

Eu só descobri que se você usar Git você pode marcar os arquivos .filter ser tratado como uma união para fundir para torná-lo mais simples. Basta adicionar a linha:

*.vcxproj.filters merge=union

ao seu arquivo .gitattributes.

Usando .gitattributes a conflitos evitar mesclagem para mais detalhes.

Ele não deve ser adicionados no caso de você usar CMake (ou ferramentas de compilação semelhantes) para gerar arquivos como *.sln, *.vcxproj, *.vcxproj.filters etc., porque estes arquivos podem conter caminho completo para a pasta do projeto e outros apenas do seu computador pastas específicas .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top