From 15e9feb1e967fa8361201d4ae3a322bfb3a0970b Mon Sep 17 00:00:00 2001 From: jkniiv <jkniiv@web> Date: Fri, 2 Sep 2022 02:04:29 +0000 Subject: [PATCH] Added a comment: I don't think there is one --- ..._31e5e55e9f8f391309b16c6591bb0bb0._comment | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 doc/forum/__34__best__34___portable_filesystem_for_external_drive__63__/comment_1_31e5e55e9f8f391309b16c6591bb0bb0._comment diff --git a/doc/forum/__34__best__34___portable_filesystem_for_external_drive__63__/comment_1_31e5e55e9f8f391309b16c6591bb0bb0._comment b/doc/forum/__34__best__34___portable_filesystem_for_external_drive__63__/comment_1_31e5e55e9f8f391309b16c6591bb0bb0._comment new file mode 100644 index 0000000000..294dea9b39 --- /dev/null +++ b/doc/forum/__34__best__34___portable_filesystem_for_external_drive__63__/comment_1_31e5e55e9f8f391309b16c6591bb0bb0._comment @@ -0,0 +1,28 @@ +[[!comment format=mdwn + username="jkniiv" + avatar="http://cdn.libravatar.org/avatar/05fd8b33af7183342153e8013aa3713d" + subject="I don't think there is one" + date="2022-09-02T02:04:29Z" + content=""" +Firstly, I don't think there is an agreement on what proper file permissions mean on local filesystems +across OSes. Without a central authority what one denies the other can easily allow thus bypassing +permissions. So basically you are semantically only left with permission \"hints\" or \"suggestions\" +-- this file is to be treated read only, that file is supposed to be executable and so on -- that is, without +any reference to a common user/group authority. + +AFAIK, there's some cross-platform support for symlinks on say NTFS, at least between linux +and windows. The problem is that NTFS symlinks are *typed* -- they are either directory or file +symlinks and while git on windows can restore symlinks (with core.symlinks = true) post-checkout +(for instance with `git restore`), it can't seem to be able to decide which kind it needs *during* +checkout, so it simply places symlink contents as regular files at first and declares them modified. + +Considering that git's own handling of symlinks is lackluster on Windows, it's no wonder that Joey hasn't +been very enthusiastic about adding the support for the regular indirect locked mode there. +E.g., I'll refer you to this archived todo in Google's cache for context: <https://webcache.googleusercontent.com/search?q=cache:Bu24xB2MR94J:https://git-annex.branchable.com/todo/utilising_the_mklink_command_on_windows_to_utilise_symlinks_and_therefore_indirect_mode_on_windows/> + +As for locking, Joey can probably expand on that subject. + +All in all there are several obstacles to working with checked out files across platforms. As far as I can tell +the only cross-platform format is a bare remote with permissive file modes which is of course a bit inconvenient +for day-to-day work because usually you need that checked out worktree somewhere for your apps to operate on. +"""]]