我的问题很简单,与SharpSvn的API,它应该很容易为好。在这里我所做的:

path = "c:\project";
using (SvnLookClient client = new SvnLookClient())
{
    SvnLookOrigin o = new SvnLookOrigin(path);
    Collection<SvnChangedEventArgs> changeList;
    client.GetChanged(o, out changeList); // <-- Exception
}

和当我调用GetChanged,我得到一个异常:

  

无法打开文件“C:\项目\格式”:系统找不到指定文件

因此,也许有我丢失的东西?或者,也许它不是做找出本地仓库修改过的文件和文件夹列表中选择正确的方式?

预先感谢。

有帮助吗?

解决方案

在SharpSvn的SvnLookClient类是等同于使用“svnlook”控制台应用程序。这是一个低级别的工具,使库钩子考虑使用直接文件访问的存储库的具体交易。

您可能需要使用SvnClient类看一个WorkingCopy,最有可能的状态(状态),或在某些情况下,简单的getStatus()函数,看看有什么变化。

其他提示

,该SvnLookOrigin构造想要的路径实际上是:

path = "c:\project\.svn\";

也就是说,它希望的是特殊的“使用svn”目录不只是其中源检出到的根。

虽然你可能要听伯特和做类似:

path = "c:\project";
using (SvnLookClient client = new SvnLookClient())
{
    SvnLookOrigin o = new SvnLookOrigin(path);
    Collection<SvnChangedEventArgs> changeList;
    client.GetStatus(o, out changeList); // Should now return the differences between this working copy and the remote status.
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top