2014-09-26 82 views
0

使用SharpSvn,我试图获得文件状态的准确表示。如何检测文件被忽略?

当我在没有本地修改的版本化文件上执行svnClient.Status时,我没有返回状态。
当我在非版本化的,被忽略的文件上执行svnClient.Status时,我也没有返回状态。

如何区分这两者?我如何发现某个文件被忽略?

回答

0

设置options.RetrieveAllEntriestrue解决了这个问题,如果 - 并且仅当 - options.RetrieveRemoteStatus设置为false。否则,我没有得到忽略文件的状态。

对于未版本化,未修改的文件,它将返回状态“正常”,对于未版本化,忽略的文件,状态将为“已忽略”。

var options = new SvnStatusArgs(); 
Collection<SvnStatusEventArgs> statuses; 
options.RetrieveRemoteStatus = onlineMode; 
options.RetrieveAllEntries = true; 

client.GetStatus(file, options, out statuses);