Digamos que tengo un repositorio svn en https://www.mysvn.com/svn/. ¿Cómo puedo usar SharpSVN para averiguar si la carpeta remota https://www.mysvn.com/svn/a/b/c existe en el servidor?Cómo usar SharpSVN para (rápidamente) verificar si existe una carpeta/archivo remoto en el servidor
Necesito hacerlo de una manera que me permita diferenciar entre una conexión fallida (es decir, el servidor inactivo) y la carpeta simplemente no se ha creado aún.
La información de llamada en la ruta completa https://www.mysvn.com/svn/a/b/c no parece dar una excepción que me permita distinguir entre ningún repositorio y solo una carpeta faltante.
Podría enumerar todos los archivos para https://www.mysvn.com/svn/ pero el repositorio puede ser tan grande que puede llevar demasiado tiempo.
Ahora estoy haciendo una información en la primera URL de la raíz y luego en la url completa. Si la url raíz falla, la trato como un problema del servidor, pero si tiene éxito y la url completa falla, asumo que es porque parte de la ruta no se ha creado en el servidor. Sin embargo, esto podría dar la respuesta incorrecta si se pierde la conexión a Internet entre los dos controles o similar.
Actualmente estoy probando con los repositorios de sistemas de ficheros locales (es decir, la url es "file: ///"), y en este caso SharpSvn.SvnClient.List me da una "SharpSvn.SvnRepositoryIOException: no se puede abrir una sesión ra_local a la URL" cuando la paso por la url del repositorio anexado con una ruta relativa falsa. Exactamente la misma excepción se produce al dar una url completamente falsa. –
Ziphnor