Apesar de poder fazer e automatizar muitas tarefas, há diversas coisas que não podem ser confundidas com um CVS ou com as funções que o mesmo deve desempenhar.
Mesmo que a sua estrutura de repositório e módulos interaja com seu sistema de geração (e.g. Makefile), eles são completamente independentes.
O CVS não impõe nenhuma condição em como gerar algo. Ele apenas armazena arquivos numa estrutura que você fornece.
O CVS não dita como deve ser gerenciado o uso do disco nas cópias que você retira do repositório. Se você escreve Makefiles e scripts de modo que eles precisem saber a posição de todos os demais arquivos, você termina exigindo que todo o repositório tenha que ser retirado. Se você otimizar o seu trabalho você pode organizar a necessidade de uso do disco para o que você quiser.
Os gerentes e líderes de projeto ainda devem reportar-se a você com a freqüência necessário para que você saiba como anda o agendamento do projeto. Eles devem também reportar decisões como junções de alguns arquivos, marcações de versões, criações de ramificações de desenvolvimento e datas de liberação.
Comparando com um instrumento musical, o CVS ainda precisa de alguém para escrever e tocar a música.
Quando encontram algum conflito, a maioria dos desenvolvedores consegue solucioná-los rápida e facilmente. Mas, a existência de conflitos vem da existência de divergências no método de implementação.
O CVS não tem como determinar se uma mudança em um arquivo não vai implicar em problemas em outro. O conceito de conflito que o CVS possui é meramente textual, ou seja, quando duas alterações se sobrepõem há conflito. Ele não possui métodos de determinar conflitos lógicos.
Controle de mudanças pode se referir a muitas coisas. Uma delas seria o rastreamento de erros. Uma outra abordagem para o controle de mudanças seria a verificação da consistência lógica de mudanças implementadas em diversos arquivos. Outra possibilidade seria, ainda, manter um rastreamento de cada mudança. Algumas mudanças foram feitas por um desenvolvedor, outras por outro e assim sucessivamente.
É possível realizar testes usando scripts e os arquivos de configuração do CVS, mas essa é uma situação bem incomum e que pode apresentar alguns efeitos colaterais.
Alguns sistemas possuem mecanismos capazes de verificar diversos ítens antes para certificarem-se de que as mudanças feitas são válidas. Isso pode ser feito com o CVS, mas requer um pouco mais de trabalho. Arquivos de configuração do CVS podem ser usados em diversas etapas do processo para ir fazendo uma validação parcial do projeto.