Svn 如何从subversion获取部分更新

Svn 如何从subversion获取部分更新,svn,nant,revision,Svn,Nant,Revision,我在应用程序的存储库中处于以下场景: 修订版7(2个更改文件,1个添加文件) 第6版(4个更改文件) 第5次修订(增加2次,删除2次,更改2次) 第4版(3个更改文件) 第3版(增加12个,更改2个文件) 我想得到一份工作副本,包括从修订3到Head的所有更改,但不包括修订5和6的更改 我正在使用SVN merge进行此操作,但没有反映更改,并且我在修订版5和6中遇到了文件冲突 下面是nant的配置文件描述,其中包含用于此操作的可执行命令 <exec program="C:\Progr

我在应用程序的存储库中处于以下场景:

  • 修订版7(2个更改文件,1个添加文件)
  • 第6版(4个更改文件)
  • 第5次修订(增加2次,删除2次,更改2次)
  • 第4版(3个更改文件)
  • 第3版(增加12个,更改2个文件)
我想得到一份工作副本,包括从修订3到Head的所有更改,但不包括修订5和6的更改

我正在使用SVN merge进行此操作,但没有反映更改,并且我在修订版5和6中遇到了文件冲突

下面是nant的配置文件描述,其中包含用于此操作的可执行命令

<exec program="C:\Program Files\CollabNet\Subversion Client\svn.exe" commandline="checkout https://test.repositoryhosting.com/svn/1_test@${Rev} D:\MyTest --username test --password 123"/> 
<exec program="C:\Program Files\CollabNet\Subversion Client\svn.exe" commandline="merge -c  -6  https://test.repositoryhosting.com/svn/1_test  D:\MyTest  --username test --password 123"  />
<exec program="C:\Program Files\CollabNet\Subversion Client\svn.exe" commandline="merge –c  -5  https://test.repositoryhosting.com/svn/1_test  D:\MyTest  --username test --password 123"  />
<exec program="D:\NANT_SCRIPTS\Delete Publish.bat"  commandline="${Rev}" />
<exec program="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler.exe" commandline="-nologo -v / -p D:\ MyTest -u D:\PublishOutput_${Rev}" />


如何解决此问题?

您可以尝试以另一种方式解决此问题:

  • 恢复第6版的更改
  • 承诺
  • 恢复第5版的更改
  • 承诺
  • 查看头部修正

这将使工作副本达到您想要的状态。第5版和第6版的更改将在存储库中恢复,但在您提交更改时仍会发生这种情况。

您的意图是什么?是否要简单地还原修订版5和6中所做的更改?是的,我想在我的工作副本中排除修订版5和6的更改,但需要在工作副本中更改修订版3、4、7。我想在本地工作副本中进行这些更改,我不想在存储库中进行更改。所以我可以从本地工作副本中恢复这些吗?我从SVN获取更新?听起来很奇怪。。。如果不打算提交这些操作,为什么需要在工作副本中执行这些操作?我将发布此工作副本(上面的命令中给出了D:\MyTest,这是我获取代码的位置)代码以创建生成。这有意义吗?我不确定。。。无论如何,如果版本7的更改与版本5或版本6不相交,可以尝试以下操作:1)在版本7和版本6之间生成SVN修补程序;2) 查阅第4版的工作副本;3) 应用上面生成的修补程序并尝试构建此修补程序