我正在使用SharpSvn库。我想检查我本地的文件是否与subversion服务器上的文件相同。有谁知道我是怎么做到的? 目前这正是我想要做的,但是它说“无法连接到URL上的存储库”
public bool IsDirectoryTheSame(string folderpath)
{
var IsSameDirectory = false;
var installfolderlocal = GetInstallationFolder(folderpath);
using (SvnClient svnClient = new SvnClient())
{
SvnUriTarget target1 =
new SvnUriTarget(
new Uri(string.Format("{0}{1}", svnclientpath, folderpath)));
SvnUriTarget target2 =
new SvnUriTarget(
new Uri(installfolderlocal));
using(var stream = new MemoryStream())
{
IsSameDirectory = svnClient.Diff(target1,target2,stream);
}
}
return IsSameDirectory;
}
答案 0 :(得分:1)
我假设您的问题是本地文件受版本控制,在这种情况下,您可以使用GetInfo()获取存储库中文件的最新版本号,并将其与本地的最新版本号进行比较文件。
Another suggestion将使用GetUriFromWorkingCopy()。我个人自己没有测试过,但值得一试。
无论如何,你应该使用diffing作为最后的手段,因为这可能是一个昂贵的电话。但是,如果文件不受版本控制,那么这可能是您唯一的一次。