aboutsummaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorAlex Riesen <raa.lkml@gmail.com>2012-07-07 23:50:30 +0200
committerJunio C Hamano <gitster@pobox.com>2012-07-09 13:22:29 -0700
commit45d4fdc2dc74c657a9c2e95bf04aed539fdcb0a4 (patch)
tree2acaacf7d59eaea0ca6093dabe979250136122fd /builtin
parentd0f1ea6003d97e63110fa7d50bb07f546a909b6e (diff)
downloadgit-45d4fdc2dc74c657a9c2e95bf04aed539fdcb0a4.tar.gz
git-45d4fdc2dc74c657a9c2e95bf04aed539fdcb0a4.tar.xz
Restore umasks influence on the permissions of work tree created by clone
The original version of the git-clone just used mkdir(1) to create the working directories. The version rewritten in C creates all directories inside the working tree by using the mode argument of 0777 when calling mkdir(2) to let the umask take effect. But the top-level directory of the working tree is created by passing the mode argument of 0755 to mkdir(2), which results in an overly tight restriction if the user wants to make directories group writable with a looser umask like 002. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin')
-rw-r--r--builtin/clone.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin/clone.c b/builtin/clone.c
index 0fb5956b4..d7387e63a 100644
--- a/builtin/clone.c
+++ b/builtin/clone.c
@@ -557,7 +557,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
if (safe_create_leading_directories_const(work_tree) < 0)
die_errno(_("could not create leading directories of '%s'"),
work_tree);
- if (!dest_exists && mkdir(work_tree, 0755))
+ if (!dest_exists && mkdir(work_tree, 0777))
die_errno(_("could not create work tree dir '%s'."),
work_tree);
set_git_work_tree(work_tree);