summaryrefslogtreecommitdiff
path: root/sys/man/4/gitfs
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2021-06-22 23:55:54 +0000
committerOri Bernstein <ori@eigenstate.org>2021-06-22 23:55:54 +0000
commitb904edadd8869787b4419ce93c1c29b5beee3556 (patch)
tree1c967b0479a0937d705714f858c182840cb1ef44 /sys/man/4/gitfs
parent577033228209f28350dc3f75ef9d4ce88dfdf190 (diff)
git/fs: use a better heuristic for permissions.
Since we now store /dist/plan9front in git, the initial assumption that the owner of the repo is the person touching it is not always true. This change gives us a better heuristic for the file permissions we should have in the files we copy around, basing it off of the permissions of the .git directory.
Diffstat (limited to 'sys/man/4/gitfs')
-rw-r--r--sys/man/4/gitfs20
1 files changed, 16 insertions, 4 deletions
diff --git a/sys/man/4/gitfs b/sys/man/4/gitfs
index 819435cec..cd71e6430 100644
--- a/sys/man/4/gitfs
+++ b/sys/man/4/gitfs
@@ -74,6 +74,15 @@ hierarchy are the same as the date of the commit.
.PP
Trees are presented as directory listings, and blobs
as files.
+The repository controls the user permissions.
+The group and world permissions are derived by masking
+the user permissions with the permissions of the
+.I .git
+directory.
+The user and group presented is the same as the user and
+group of the
+.I .git
+directory.
.SH FILES
.TP
@@ -100,11 +109,14 @@ The global configuration for git tools.
.SH BUGS
Symlinks are only partially supported.
-Symlinks are treated as regular files when reading.
-Modifying symlinks is unsupported.
+They will be followed when reading, but a commit that
+modifies a symlink is an error.
.PP
-There is no way to inspect the raw objects. This is
-a feature that would be useful for debugging.
+For efficiency, git/fs only loads repo permissions at startup
+
+.PP
+There is no way to inspect the raw objects.
+Inspecting raw objects would be useful for debugging.