我使用SharpSVN
做一個「提交」後一個文件在我的本地副本改名做Svn.Delete(Src) -> Svn.Add(Dst)
的SharpSvn本地文件重命名提交
代替。
我想用不同的方法來保持跟蹤我的文件
的修訂信息的重命名功能Server-Side
從舊的目標使用SVN移動信息,
到新的目標。 RemoteMove()
功能。
如何複製Local-Side
中的「svn-infos」?
我試過在我的本地文件上做cl.Move(src,dst)
,
但我收到消息說找不到源文件。
這裏是我的代碼:
private string SvnRepository = "http://svnserver/svn/repo/trunk/";
public void Start() {
System.IO.File.Move("c:\\LocalSvn\\1.txt", "c:\\LocalSvn\\2.txt");
SvnRename("c:\\LocalSvn\\1.txt", "c:\\LocalSvn\\2.txt");
}
private Uri RelativePath(string sFullPath) {
return new Uri(SvnRepository + sFullPath.Replace(Path, "").Replace('\\', '/').Substring(1));
}
public void SvnRename(string sPath, string sOldPath) {
using (SvnClient cl = new SvnClient()) {
Uri UriFrom = RelativePath(sOldPath);
Uri UriTo = RelativePath(sPath);
cl.RemoteMove(UriFrom,UriTo
, new SvnMoveArgs { LogMessage = "Rename From:" + sOldPath + " To:"
+ sPath });
//Local
}
}