diff svnwrap/svn_swig_wrapper.py @ 10:dfdc078661db

Auto-set executable, symlink, and auto-props.
author Augie Fackler <durin42@gmail.com>
date Mon, 06 Oct 2008 13:52:10 -0500
parents 9eb6bf2be1e7
children 2953c867ca99
line wrap: on
line diff
--- a/svnwrap/svn_swig_wrapper.py
+++ b/svnwrap/svn_swig_wrapper.py
@@ -241,7 +241,8 @@ class SubversionRepo(object):
                 yield revisions[0]
                 revisions.pop(0)
 
-    def commit(self, paths, message, file_data, base_revision, dirs):
+    def commit(self, paths, message, file_data, base_revision, dirs,
+               properties):
         """Commits the appropriate targets from revision in editor's store.
         """
         self.init_ra_and_client()
@@ -271,6 +272,12 @@ class SubversionRepo(object):
                 baton = editor.delete_entry(path, base_revision, parent, pool)
                 compute_delta = False
 
+            if path in properties:
+                if properties[path].get('svn:special', None):
+                    new_text = 'link %s' % new_text
+                for p, v in properties[path].iteritems():
+                    editor.change_file_prop(baton, p, v)
+
             if compute_delta:
                 handler, wh_baton = editor.apply_textdelta(baton, None,
                                                            self.pool)