2012-07-09 14 views
2

使用ANT和SVNANT,我想檢入一個工作目錄,其中包含受svn控制的文件和新文件的組合子目錄。根據我的SVN ANT "add" task的認識,用「力」標誌,因爲我有以下應該做同樣的事情到svn add --force *SVN ANT使用「強制」選項「添加」任務選項提供「已在版本控制下」編譯錯誤

基本上,我有在CollabNet站點中this issue描述了同樣的問題。

這裏是我的xml配置:

<target name="add-new-files-to-test-repo" depends="check-out-projects"> 
    <svn username="${svn.test.username}" password="${svn.test.password}" svnkit="true" javahl="false"> 
     <add 
      force="true" > 
      <fileset dir="${svn.testdir}"/> 
     </add> 
    </svn>  
    <echo message="Adding new files to SVN"/> 
</target> 

給出了迴應:

svn: 'D:\Workspaces\TreXProjects\Build\testdir\New Text Document.txt' is already under version control 

回答

2

終於得到了這個工作之後我寫了這一點,通過重新閱讀我鏈接的文檔。由於關於在<add>任務中使用「強制」標記的部分指示:

(僅在設置了dir屬性時適用)。

所以我固定的代碼讀取:

<target name="add-new-files-to-test-repo" depends="check-out-projects"> 
    <svn username="${svn.test.username}" password="${svn.test.password}" svnkit="true" javahl="false"> 
     <add force="true" dir="${svn.testdir}" > 
     </add> 
    </svn>  
    <echo message="Adding new files to SVN"/> 
</target> 

當然,這意味着你不能使用<fileset>任務的「包括」屬性脫脂 特定的文件,因爲這個問題的鏈接作者在我的問題想要做的。我的工作是檢查從 SVN的工作目錄,只使用已過濾的 ,然後將該目錄中的文件複製到該工作目錄中。