From: Linus Torvalds Date: Sun, 22 Apr 2007 18:54:41 GMT Subject: Re: Today's 'master' leaves .idx/.pack in 0400 Message-ID: In-Reply-To: On Sun, 22 Apr 2007, Nicolas Pitre wrote: > > Well, actually there is no point making pack files writable. If they're > modified, they get corrupted. > > Here's the fix I wanted to propose: > > diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c > index c72e07a..85c6e6e 100644 > --- a/builtin-pack-objects.c > +++ b/builtin-pack-objects.c > @@ -1786,11 +1786,13 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix) > if (rename(pack_tmp_name, tmpname)) > die("unable to rename temporary pack file: %s", > strerror(errno)); > + chmod(tmpname, 0444); I think this is wrong (as is Junio's). I think we should still honor the repository permission setting, and default to honoring umask. So I think that if the user has a umask that says "nobody else can read", then we should *not* make it world readable (unless the "shared_repository" thing is set to override it, of course). Linus