Search code examples
c#svnsharpsvn

How to check if file is under source control in SharpSvn?


Hi I use C# and SharpSvn library. I would like to check if file is under source control before adding it with SvnClient.Add. When I do it on file that already is under SVN than I get error : "is already under version control".


Solution

  • This pretty well demonstrates how to do it using status

    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));
    }