author | Michał Kiedrowicz <michal.kiedrowicz@gmail.com> | |
Sat, 11 Apr 2009 19:31:00 +0000 (21:31 +0200) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Thu, 16 Apr 2009 00:47:55 +0000 (17:47 -0700) | ||
commit | 7fac0eef91cf930ef827b00934701fa5543dce76 | |
tree | 7f3c60cd58be366a3f8e6440b9b574d6927f8f3a | tree | snapshot |
parent | d8c81dfcaf3ac4bab0f0f8f54d2c4ae0425abcbf | commit | diff |
builtin-apply: keep information about files to be deleted
Example correct diff generated by `diff -M -B' might look like this:
diff --git a/file1 b/file2
similarity index 100%
rename from file1
rename to file2
diff --git a/file2 b/file1
similarity index 100%
rename from file2
rename to file1
Information about removing `file2' comes after information about creation
of new `file2' (renamed from `file1'). Existing implementation isn't able to
apply such patch, because it has to know in advance which files will be
removed.
This patch populates fn_table with information about removal of files
before calling check_patch() for each patch to be applied.
Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Example correct diff generated by `diff -M -B' might look like this:
diff --git a/file1 b/file2
similarity index 100%
rename from file1
rename to file2
diff --git a/file2 b/file1
similarity index 100%
rename from file2
rename to file1
Information about removing `file2' comes after information about creation
of new `file2' (renamed from `file1'). Existing implementation isn't able to
apply such patch, because it has to know in advance which files will be
removed.
This patch populates fn_table with information about removal of files
before calling check_patch() for each patch to be applied.
Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-apply.c | diff | blob | history | |
t/t4130-apply-criss-cross-rename.sh | diff | blob | history |