No Subversion 1.5 e superior, há um ótimo recurso que permite que você execute checkouts esparsos de um repositório. Isso é realmente útil se você tiver um grande repositório e só quiser trabalhar em uma seção dele.
Isso também significa que você pode fazer check-out do esqueleto de toda a árvore, incluindo tags e ramos, e apenas puxar para baixo o conteúdo conforme necessário.
Como um exemplo:
svn checkout http://svn.apache.org/repos/asf/subversion --depth=immediates
cd subversion/trunk
svn update --set-depth infinity
cd ../tags
svn update --set-depth immediates
cd 1.7.7
svn update --set-depth infinity
O exemplo acima verifica um esqueleto dos diretórios vazios no nível superior do repositório Apache Subversion. Eu então mudo para o diretório subversion / trunk e faço um ‘svn update’ que puxa todo o conteúdo do ‘trunk’. O resto do repositório permanece uma verificação esparsa. Em seguida, mudo para o diretório ‘tags’ e puxo para baixo as pastas vazias de todas as tags que foram criadas. Eu então mudo para ‘1.7.7.’ marque e baixe o conteúdo real, definindo a profundidade para o infinito.
Você pode imaginar que isso seria útil se você quiser verificar se existe uma mudança em uma determinada tag, ou se quiser trabalhar em um determinado branch quando houver muitos branches.
Observe o padrão acima, ao fazer o checkout de um repositório, você usa a opção –depth. Quando você atualiza, você é capaz de alterar a configuração de profundidade pegajosa usando a opção –set-depth.
Para obter mais detalhes sobre esse recurso, verifique os documentos:
http://svnbook.red-bean.com/en/1.5/svn.advanced.sparsedirs.html