|
From: | John Meinel |
Subject: | [Gnu-arch-users] Re: Link with permissions (was: bitkeeper vs tla) |
Date: | Fri, 24 Sep 2004 13:43:23 -0500 |
User-agent: | Mozilla Thunderbird 0.8 (Windows/20040913) |
Miles Bader wrote:
Dustin Sallings <address@hidden> writes:
[...]
Perhaps tla could somehow assist this by providing a way to easily make all files in a project tree read-only, e.g., `tla get --link --read-only'? I guess it would have to add some meta-data indicator to tell mkpatch not to do any permission bit comparisons against that tree. -Miles
What about this. Tla keeps the meta information about file permissions separate from the files themselves. (I think right now the way it checks if permissions have changed is to do a stat on the revlib and the tree, and then see what the permission bits are).
Then by default (or with a flag), a checkout could be read-only. As could revlibs. I know CVS supports this, I'm guessing bitkeeper does as well (in CVS the 'edit' command undoes the readonly flag.)
I don't know that "chmod foo" cares enough about the file permissions, though, since you are changing them, and a hardlinked tree has the same permissions on all versions of the file.
(Side issue: WHY does hardlinking have to keep the permission bits. It would be really nice if I could keep a writeable copy in my working dir, and then have a readonly copy in a world directory, with them hardlinked together. I guess it's where hardlinking is done...)
That *might* help making '--link' a little bit safer.I know tla checks all file permissions and keeps track of them. Such that a checkout restores exactly the same permissions. But is that what we want. From what I've seen, the only bit that we really care about is whether or not the file is executable, and all the rest just cause problems. Group r/w causes lots of problems for people sharing code. Especially since the revlib has the same permissions as the files. So while my system is umask 022 (default no group write, or even 027 no other read). It would be nice if a shared revlib could be 002 so others could add to it.
Just some thoughts about permission handling, John =:->
signature.asc
Description: OpenPGP digital signature
[Prev in Thread] | Current Thread | [Next in Thread] |