Eu trabalho com uma equipe de programadores como analista de negócios. Acabamos de lançar a versão 2.0 do nosso produto e estamos trabalhando na próxima versão a ser lançada em 3 meses (é um produto de software interno). Infelizmente, a versão 2.0 tem alguns problemas que eles tiveram que corrigir e vamos implantá-las em algumas semanas. O problema é que também não queremos implantar as alterações que ainda estão sendo trabalhadas e que não serão lançadas por mais três meses.
Os programadores decidiram que a maneira de gerenciar isso era que apenas o código dos defeitos seria verificado e o código dos novos aprimoramentos será mantido nas máquinas locais do desenvolvedor até que sejam concluídos. Terei que fazer as compilações locais de suas máquinas para testar, porque se eles fizerem o check-in do código e precisarmos enviar outro patch para corrigir defeitos, ainda não queremos incluir esses aprimoramentos. Também existe o problema em que o mesmo arquivo de código contém correções e aprimoramentos de defeitos, portanto, eles precisam copiar o arquivo de código localmente e, em seguida, fazer uma alteração para corrigir um bug e verificar esse erro, retomando o trabalho nos aprimoramentos, usando o comando cópia local que eles fizeram.
Parece bastante complicado - existe uma maneira melhor de lidar com esse tipo de cenário? Estamos usando o Team Foundation Server e o Visual Studio 2010.