Browse Source

git svn: log removals of empty directories

This also adds a test case for:
  "git svn: Don't create empty directories whose parents were deleted"
which was the reason we found this bug in the first place.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
maint
Eric Wong 15 years ago
parent
commit
f9ad77a739
  1. 2
      git-svn.perl
  2. 10
      t/t9146-git-svn-empty-dirs.sh

2
git-svn.perl

@ -3891,11 +3891,11 @@ sub delete_entry { @@ -3891,11 +3891,11 @@ sub delete_entry {
}
print "\tD\t$gpath/\n" unless $::_q;
command_close_pipe($ls, $ctx);
$self->{empty}->{$path} = 0
} else {
$self->{gii}->remove($gpath);
print "\tD\t$gpath\n" unless $::_q;
}
$self->{empty}->{$path} = 0;
undef;
}


10
t/t9146-git-svn-empty-dirs.sh

@ -105,4 +105,14 @@ test_expect_success 'empty directories in trunk exist' ' @@ -105,4 +105,14 @@ test_expect_success 'empty directories in trunk exist' '
)
'

test_expect_success 'remove a top-level directory from svn' '
svn_cmd rm -m "remove d" "$svnrepo"/d
'

test_expect_success 'removed top-level directory does not exist' '
git svn clone "$svnrepo" removed &&
test ! -e removed/d

'

test_done

Loading…
Cancel
Save