Controle de versão distribuído para projetos ENORMES - é viável?

Estamos muito felizes com o SVN agora, masO tutorial de Joel me intrigou. Então eu estava pensando - seria viável também em nossa situação?

A questão é: nosso repositório SVN é ENORME. O software em si tem um legado de 15 anos e já sobreviveu a vários sistemas de controle de origem diferentes. Existem mais de 68.000 revisões (conjuntos de alterações), a fonte em si ocupa mais de 100 MB e não consigo nem adivinhar quantos GB o repositório inteiro consome.

O problema, então, é simples - um clone de todo o repositório provavelmente levaria séculos para ser produzido e consumiria muito mais espaço na unidade remotamente sã. E como o objetivo do controle de versão distribuído é ter tantos repositórios quanto necessário, estou começando a ter dúvidas.

Como o Mercurial (ou qualquer outro controle de versão distribuído) lida com isso? Ou são inutilizáveis para projetos tão grandes?

Adicionado: Para esclarecer - a coisa toda é uma fera monolítica de um projeto que é compilada em um único .EXE e não pode ser dividida.

Adicionado 2: Pensando bem - o repositório do kernel Linux usa git e é provavelmente uma ordem de magnitude ou duas maior que a minha. Então, como eles fazem isso funcionar?

questionAnswers(10)

yourAnswerToTheQuestion