2017-07-28 47 views
1

从颠覆更新文件后,我尝试解决冲突的选项:他们的,我的或合并,但操作无效。我查看了SharpSvn网站和stackoverflow主题的文档,但没有解决方案成功。SharpSvn解决冲突不起作用

我的代码

SvnResolveArgs svnResolveArgs = new SvnResolveArgs(); 
svnResolveArgs.ThrowOnError = true; 

SvnAccept accept = SvnAccept.Unspecified; 

switch (frmResolve.IdResolve) 
{ 
    case 0: 
     accept = SvnAccept.Theirs; 
     break; 
    case 1: 
     accept = SvnAccept.Mine; 
     break; 
    case 2: 
     accept = SvnAccept.Merged; 
     break; 
} 

if (accept != SvnAccept.Unspecified) 
{ 
    client.Resolve(_caminhoGELocal, accept, svnResolveArgs); 
    HideInvoke(f); 
    this.ShowMsg(Mensagens.SucessoOperacao); 
    _isOcorreuConflito = false; 
} 
else 
    this.ShowMsg(Mensagens.OpcaoResolveNaoSelecionada); 

解决执行后,我的文件保持与修改文件和标记像波纹管:

<<<<<<< .mine 
<Style id="s_ylw-ccccccccc"> 
    <IconStyle> 
     <scale>1.5</scale> 
     <Icon> 
      <href>http://maps.google.com/mapfiles/kml/shapes/water.png</href> 
     </Icon> 
     <hotSpot x="0.5" y="0" xunits="fraction" yunits="fraction"/> 
    </IconStyle> 
</Style> 
||||||| .r4477 
======= 

如何解决这个错误?

回答

1

在Subversion中,它真的取决于你有什么样的冲突,你可以选择哪些选项。特别是在树型冲突中,选项列表非常有限。对于文本和财产冲突,您现在使用的选项通常应该可以工作。

随着Subversion 1.10将会有一个新的API,提供了这些选项将做的有效选项和描述的列表。当该版本接近发行版时,此支持也将通过SharpSvn版本提供。

+0

谢谢Bert Huijben。 –