As far as I know, svn does not provide such a function. But you can write a simple C # program using SharpSVN . Here is an example you can use. In this example, I get the entire modified file from version 100 to 200.
using SharpSvn; using System.IO; using System.Collections.ObjectModel; using Microsoft.VisualBasic; namespace SvnDiffExporter { class Program { static void Main(string[] args) { SvnClient client = new SvnClient(); SvnRevisionRange range = new SvnRevisionRange(100, 200); MemoryStream result = new MemoryStream(); Collection<SvnLogEventArgs> items; SvnLogArgs logargs = new SvnLogArgs(range); client.GetLog(@"e:\Artifacts", logargs, out items); int i = 0; string [] path = new string[255]; foreach (SvnLogEventArgs ar in items) { foreach (SvnChangeItem changeitem in ar.ChangedPaths) { if (changeitem.Action != SvnChangeAction.Delete) { path[i] = changeitem.Path; i++; } } } string localpath = @"c:\data"; foreach (string str in path) client.Export(str, localpath); } } }
source share