Chandra Pratap noticed that "git apply" on a filesystem without
executable bit support gives a warning when applying a patch that
expects the preimage file to have executable bit on. Dscho noticed
that the initial fix by Chandra did not work well when applying a
patch in reverse. It turns out that apply.c:reverse_patches()
invalidates the "a patch that does not change mode bits have the
mode bits in .old_mode member and not in .new_mode member" invariant
we rely on.
Here is the result of concerted effort.
Chandra Pratap (1):
apply: ignore working tree filemode when !core.filemode
Junio C Hamano (2):
apply: correctly reverse patch's pre- and post-image mode bits
apply: code simplification
apply.c | 16 +++++++++++++---
t/t4129-apply-samemode.sh | 27 +++++++++++++++++++++++++++
2 files changed, 40 insertions(+), 3 deletions(-)
--
2.43.0-174-g055bb6e996