summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 45d2b28)
raw | patch | inline | side by side (parent: 45d2b28)
author | Eric Wong <normalperson@yhbt.net> | |
Sat, 18 Feb 2006 05:04:47 +0000 (21:04 -0800) | ||
committer | Junio C Hamano <junkio@cox.net> | |
Sat, 18 Feb 2006 09:22:39 +0000 (01:22 -0800) |
This fixes a bug when importing where a directory gets removed/renamed
but is immediately replaced by a file of the same name in the same
revision.
Signed-off-by: Eric Wong <normalperson@yhbt.net>
but is immediately replaced by a file of the same name in the same
revision.
Signed-off-by: Eric Wong <normalperson@yhbt.net>
contrib/git-svn/git-svn | patch | blob | history |
index 2caf0570ff7753f59b1e9709590a793a7940a2a6..71a8b3b2e69a47a4f1919589058121ac576f247c 100755 (executable)
--- a/contrib/git-svn/git-svn
+++ b/contrib/git-svn/git-svn
sub sys { system(@_) == 0 or croak $? }
sub git_addremove {
- system( "git-ls-files -z --others ".
+ system( "git-diff-files --name-only -z ".
+ " | git-update-index --remove -z --stdin; ".
+ "git-ls-files -z --others ".
"'--exclude-from=$GIT_DIR/$GIT_SVN/info/exclude'".
- "| git-update-index --add -z --stdin; ".
- "git-ls-files -z --deleted ".
- "| git-update-index --remove -z --stdin; ".
- "git-ls-files -z --modified".
- "| git-update-index -z --stdin") == 0 or croak $?
+ " | git-update-index --add -z --stdin; "
+ ) == 0 or croak $?
}
sub s_to_file {