Search code examples
svnnant

executing svn diff from a nant task


I am running a nant task to package all the source files into a zip and in the same task, I want to run a svn diff command on one particular folder to notify changes made within that source. The command that I want to execute, in its simplest form, from the command prompt is :

svn diff $Special_Folder$ > Changes_In_$Special_Folder$.patch

I have the following xml in a nant target

<svn command="diff"
             destination="..\build\Database\Scripts"    
             uri ="http://SVN-server/PATH/To/Src">       
</svn>

However, I am getting an error from svn that says error from svn. What am I doing wrong?


Solution

  • I figured out a way to get this done. The solution does not involve the nant task . I was able to get it done through the task.

    <target name="takeDiff" >
        <echo message="Taking svn diff of Database scripts...  "/>
         <exec program="svn.exe" 
                    commandline="diff Database/Scripts" 
                    output="${build.dir}/script_Diff.patch" 
                    failonerror="true"/> 
        <echo message="Diff is in ${build.dir}\script_Diff.patch...  "/>
    </target>