aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2006-04-07 18:01:55 -0700
committerJunio C Hamano <junkio@cox.net>2006-04-07 18:01:55 -0700
commita906ce6aa78ac8febf466b46c6fae029137cd506 (patch)
tree738a180e9620eb1a236c48a806e3052759eb5c24
parent90238fbe43e46e9a679560488401e5a9bb2708bf (diff)
parente67c66251a41653e3698580410121c9afc46cd1a (diff)
downloadgit-a906ce6aa78ac8febf466b46c6fae029137cd506.tar.gz
git-a906ce6aa78ac8febf466b46c6fae029137cd506.tar.xz
Merge branch 'kh/svn'
* kh/svn: git-svnimport: Don't assume that copied files haven't changed
-rwxr-xr-xgit-svnimport.perl15
1 files changed, 10 insertions, 5 deletions
diff --git a/git-svnimport.perl b/git-svnimport.perl
index 114784ff3..4d5371ca9 100755
--- a/git-svnimport.perl
+++ b/git-svnimport.perl
@@ -616,9 +616,7 @@ sub commit {
}
if(($action->[0] eq "A") || ($action->[0] eq "R")) {
my $node_kind = node_kind($branch,$path,$revision);
- if($action->[1]) {
- copy_path($revision,$branch,$path,$action->[1],$action->[2],$node_kind,\@new,\@parents);
- } elsif ($node_kind eq $SVN::Node::file) {
+ if ($node_kind eq $SVN::Node::file) {
my $f = get_file($revision,$branch,$path);
if ($f) {
push(@new,$f) if $f;
@@ -627,8 +625,15 @@ sub commit {
print STDERR "$revision: $branch: could not fetch '$opath'\n";
}
} elsif ($node_kind eq $SVN::Node::dir) {
- get_ignore(\@new, \@old, $revision,
- $branch,$path);
+ if($action->[1]) {
+ copy_path($revision, $branch,
+ $path, $action->[1],
+ $action->[2], $node_kind,
+ \@new, \@parents);
+ } else {
+ get_ignore(\@new, \@old, $revision,
+ $branch, $path);
+ }
}
} elsif ($action->[0] eq "D") {
push(@old,$path);