C# SharpSVN.Merge()不工作,返回true,但无法看到代码中的更改
我正在尝试将SVN文件夹中的更改合并到我的本地文件夹,其中包含以前的修订代码和新更改。下面的方法采用SrcUrl和文件夹的本地路径,该文件夹有新的更改,srcrev保存需要从svn合并到我的本地文件夹的修订号 Merge()返回True,但在合并后,我无法在本地文件夹中看到任何代码更改 谁能告诉我我哪里做错了C# SharpSVN.Merge()不工作,返回true,但无法看到代码中的更改,c#,svn,merge,sharpsvn,C#,Svn,Merge,Sharpsvn,我正在尝试将SVN文件夹中的更改合并到我的本地文件夹,其中包含以前的修订代码和新更改。下面的方法采用SrcUrl和文件夹的本地路径,该文件夹有新的更改,srcrev保存需要从svn合并到我的本地文件夹的修订号 Merge()返回True,但在合并后,我无法在本地文件夹中看到任何代码更改 谁能告诉我我哪里做错了 public void Merge(String SrcUrl,String localpath,long SrcRev) { using (SvnClient client =
public void Merge(String SrcUrl,String localpath,long SrcRev)
{
using (SvnClient client = new SvnClient())
{
try
{
SvnMergeArgs mergeArgs = new SvnMergeArgs();
mergeArgs.Depth = SvnDepth.Infinity;
//Attaching the events
mergeArgs.Notify += new EventHandler<SvnNotifyEventArgs>(Merge_Notify);
mergeArgs.SvnError += new EventHandler<SvnErrorEventArgs>(Merge_Error);
mergeArgs.Conflict += new EventHandler<SvnConflictEventArgs>(Merge_Confilct);
mergeArgs.Force = false;
SvnRevisionRange svnRange = new SvnRevisionRange(SrcRev, SrcRev);
SvnUriTarget MyTarget = new SvnUriTarget(new Uri(SrcUrl));
if( client.Merge(localpath, MyTarget, svnRange, mergeArgs))
MessageBox.Show("Merged successfully");
}
catch (SvnException se)
{
MessageBox.Show(se.Message,"svn merge error",MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
}
}
public void合并(字符串SrcUrl、字符串localpath、长SrcRev)
{
使用(SvnClient client=new SvnClient())
{
尝试
{
SvnMergeArgs mergeArgs=新的SvnMergeArgs();
mergeArgs.Depth=SvnDepth.Infinity;
//附加事件
mergeArgs.Notify+=新事件处理程序(Merge\u Notify);
mergeArgs.SvnError+=新事件处理程序(合并错误);
mergeArgs.Conflict+=新的事件处理程序(Merge\u Conflict);
mergeArgs.Force=false;
SvnRevisionRange svnRange=新的SvnRevisionRange(SrcRev,SrcRev);
SvnUriTarget MyTarget=新的SvnUriTarget(新Uri(SrcUrl));
if(client.Merge(localpath、MyTarget、svnRange、mergeArgs))
MessageBox.Show(“合并成功”);
}
捕获(SVSE)
{
MessageBox.Show(se.Message,“svn合并错误”,MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
}
}
以前是否已经合并了更改
Subversion跟踪已经合并到“svn:mergeinfo”属性中的任何内容,如果更改已经合并,您只需获得成功,就像任何其他Subversion客户端一样
请注意,您始终希望合并修订范围。。可以在两个不同的修订之间合并更改。svn
客户机通过将传递的修订的范围减去1传递给修订来实现其-c
参数,因为这恰好是该特定修订中更改的内容