Eu estou supondo que o script funciona bem se você executá-lo sem sudo . Se esse for o caso, então o seu problema é que o ssh está agora procurando pela chave pública no diretório inicial do root, ao invés do seu. Adicione uma opção -i ao seu comando ssh, especificando o caminho para a chave que você configurou, ou use a chave pública do root.
Se você estiver usando ssh-agent para armazenar uma versão descriptografada da chave em vez de usar uma chave sem senha, também será preciso editar /etc/sudoers e adicionar env_keep+="SSH_AUTH_SOCK SVN_SSH ao Defaults so ssh pode encontrar seu socket de autenticação.