Reduced testcase:
bzr init mkdir a touch a/a a/b bzr add a/* bzr ci -m a bzr rm a/b bzr mv a b bzr ci -m b bzr fast-export -v .
15:59:28 implicitly renaming a/a => b/a 15:59:28 implicitly renaming a/b => b/b
The second rename should be skipped.
=== modified file 'exporter.py' --- exporter.py 2012-05-08 14:38:44 +0000 +++ exporter.py 2012-07-13 14:08:50 +0000 @@ -559,6 +559,9 @@ renamed_already = set(old_to_new.keys()) still_to_be_renamed = set(must_be_renamed.keys()) - renamed_already for old_child_path in sorted(still_to_be_renamed): + # Deleted files should not be renamed + if old_child_path in deleted_paths: + continue new_child_path = must_be_renamed[old_child_path] if self.verbose: self.note("implicitly renaming %s => %s" % (old_child_path,
Reduced testcase:
bzr init
mkdir a
touch a/a a/b
bzr add a/*
bzr ci -m a
bzr rm a/b
bzr mv a b
bzr ci -m b
bzr fast-export -v .
15:59:28 implicitly renaming a/a => b/a
15:59:28 implicitly renaming a/b => b/b
The second rename should be skipped.
=== modified file 'exporter.py'
renamed_ already = set(old_ to_new. keys())
still_ to_be_renamed = set(must_ be_renamed. keys()) - renamed_already still_to_ be_renamed) :
new_ child_path = must_be_ renamed[ old_child_ path]
self.note( "implicitly renaming %s => %s" % (old_child_path,
--- exporter.py 2012-05-08 14:38:44 +0000
+++ exporter.py 2012-07-13 14:08:50 +0000
@@ -559,6 +559,9 @@
for old_child_path in sorted(
+ # Deleted files should not be renamed
+ if old_child_path in deleted_paths:
+ continue
if self.verbose: