From: Johannes Schindelin Date: Wed, 17 Aug 2005 07:01:07 GMT Subject: [PATCH] When copying or renaming, keep the mode, please Message-ID: Without this patch, git-apply does not retain the mode when renaming or copying files. Signed-off-by: Johannes Schindelin --- apply.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) 8dca30668d7077fa9b9157c3685b3ace8598a514 diff --git a/apply.c b/apply.c --- a/apply.c +++ b/apply.c @@ -1043,8 +1043,12 @@ static int check_patch(struct patch *pat return error("%s: already exists in working directory", new_name); if (errno != ENOENT) return error("%s: %s", new_name, strerror(errno)); - if (!patch->new_mode) - patch->new_mode = S_IFREG | 0644; + if (!patch->new_mode) { + if (patch->is_new) + patch->new_mode = S_IFREG | 0644; + else + patch->new_mode = patch->old_mode; + } } if (new_name && old_name) {