Cómo comprobar si el archivo está bajo control de código fuente en SharpSvn?
Pregunta
Hola Yo uso C # y la biblioteca SharpSvn. Me gustaría comprobar si el archivo está bajo control de código fuente antes de añadir con SvnClient.Add. Cuando lo haga en el archivo que ya está bajo SVN de lo que recibo de error:. "Ya está bajo control de versiones"
Solución
Esto demuestra bastante bien cómo hacerlo utilizando el estado
using(SvnClient client = new SvnClient())
{
SvnStatusArgs sa = new SvnStatusArgs();
sa.Depth = SvnDepth.Empty; // Adjust this to check direct files, or (recursive) directories etc
Collection<SvnStatusEventArgs> statuses;
client.GetStatus("c:\\somefile.txt", sa, out statuses);
Assert.That(statuses.Count, Is.EqualTo(1));
Assert.That(SvnStatus.NotVersioned, Is.EqualTo(statuses[0].LocalContentStatus));
}
Otros consejos
Si sólo desea saber si el archivo está bajo control de código fuente se puede utilizar .Info()
/ .GetInfo()
. Ese método es generalmente más rápido, ya que no tiene que comprobar si el archivo ha cambiado desde que fue desprotegido.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow