jidanni@xxxxxxxxxxx writes: > Why not preserve permissions the way you find them, instead of just > using 644 and 755? It certainly couldn't be more complicated than what > you are doing now, and that way one could do things like use git to > update system administration files across a sneakernet containing e.g., > # dlocate -lsconf exim4-config|sed 's/ .*//'|sort -u > -rw-r----- > -rw-r--r-- > -rwxr-xr-x > > > git was made for tracking source code, not 640 files. > > On the sneakernet no public patches would be sent, and the > administrator would remember to make the sensitive .git directories > 700. And sure, git should enforce umask or no set-uid or whatever when > doing a checkout etc. The deluxe edition of git could even print a > warning: "you are trying to track a 640 file but your .git permissions > are less restrictive." However I recommend no premium or deluxe > editions for now. Git was made for tracking _source code_ among _different_ machines, as a way to collaborate in development. This means that different users of the same repository can have and usually have different user, different user-id, different group, and perhaps different group permission settings on a files. Git supports only ordinary files, executable ordinary files, directories and symbolic links for a reason: otherwise it would be very easy to propagate spurious permission changes because some contributor has different setup. Side note: git can be used on operating systems / with filesystems which do not have UNIX notion of permissions (think MS Windows). Also changes _now_ to the repository format (and keeping full permissions would require changing format of 'tree' objects) would have to be extremely well substantiated. And using git to store system administration files, as a kind of cross between (amost) single machine version control and backup system is possible even now: see Etckeeper and IsiSetup tools (you can find them at git wiki at http://git.or.cz/gitwiki/InterfacesFrontendsAndTools page). Or you can use tools like CFEngine... HTH. -- Jakub Narebski Poland ShadeHawk on #git -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html