diff -ur vcsrepo.orig/lib/puppet/provider/vcsrepo/svn.rb vcsrepo/lib/puppet/provider/vcsrepo/svn.rb
--- vcsrepo.orig/lib/puppet/provider/vcsrepo/svn.rb	2013-07-26 14:20:03.657566459 -0500
+++ vcsrepo/lib/puppet/provider/vcsrepo/svn.rb	2013-07-26 15:34:54.603872913 -0500
@@ -6,11 +6,16 @@
   optional_commands :svn      => 'svn',
            :svnadmin => 'svnadmin'
 
-  has_features :filesystem_types, :reference_tracking, :basic_auth
+  has_features :basic_auth, :filesystem_types, :reference_tracking,
+               :repository_export
 
   def create
     if !@resource.value(:source)
       create_repository(@resource.value(:path))
+    elsif @resource.value(:export)
+      export_repository(@resource.value(:source),
+                        @resource.value(:path),
+                        @resource.value(:revision))
     else
       checkout_repository(@resource.value(:source),
                           @resource.value(:path),
@@ -93,6 +98,15 @@
     svnadmin(*args)
   end
 
+  def export_repository(source, path, revision)
+    args = buildargs.push('export')
+    if revision
+      args.push('-r', revision)
+    end
+    args.push(source, path)
+    svn(*args)
+  end
+
   def update_owner
     if @resource.value(:owner) or @resource.value(:group)
       set_ownership
diff -ur vcsrepo.orig/lib/puppet/type/vcsrepo.rb vcsrepo/lib/puppet/type/vcsrepo.rb
--- vcsrepo.orig/lib/puppet/type/vcsrepo.rb	2013-07-26 15:31:07.448049014 -0500
+++ vcsrepo/lib/puppet/type/vcsrepo.rb	2013-07-26 15:36:46.437751429 -0500
@@ -5,13 +5,18 @@
 
   feature :gzip_compression,
           "The provider supports explicit GZip compression levels"
+
   feature :basic_auth,
           "The provider supports HTTP Basic Authentication"
+
   feature :bare_repositories,
           "The provider differentiates between bare repositories
           and those with working copies",
           :methods => [:bare_exists?, :working_copy_exists?]
 
+  feature :repository_export,
+          "The provider supports repository export"
+
   feature :filesystem_types,
           "The provider supports different filesystem types"
 
@@ -116,6 +121,11 @@
     desc "The source URI for the repository"
   end
 
+  newparam :export, :required_features => [:repository_export] do
+    desc "Repository Export"
+    newvalues(:true, :false)
+  end
+
   newparam :fstype, :required_features => [:filesystem_types] do
     desc "Filesystem type"
   end
