From 3dfe165a054456593cf81330935c48853c557967 Mon Sep 17 00:00:00 2001 From: "grawity@dec5f8ddda45c421809e4687d9950f9ed2a03e46" Date: Mon, 8 Apr 2024 09:52:49 +0000 Subject: [PATCH] --- doc/todo/absolute_symlinks.mdwn | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 doc/todo/absolute_symlinks.mdwn diff --git a/doc/todo/absolute_symlinks.mdwn b/doc/todo/absolute_symlinks.mdwn new file mode 100644 index 0000000000..348ef67b8c --- /dev/null +++ b/doc/todo/absolute_symlinks.mdwn @@ -0,0 +1,7 @@ +A lot of my git-annex content doesn't have a "stable" location within the repository, I might decide to move things to subdirectories or out of subdirectories. This always invalidates the relative `../../.git/` symlinks that git-annex uses and I have to `annex fix` them every time I move things around. This is especially useful when I'm accessing my homeserver over SMB from Windows PCs, where symlinks are followed automatically – and broken symlinks simply don't show up via SMB at all, so moving a file into a subfolder causes it to "disappear" until `annex fix`. + +But the repository as a whole does have a stable location in the filesystem, so it would be much more convenient if I had an option for the item symlinks to use absolute paths, e.g. `Foo.mkv -> /hdd/Videos/.git/annex/[etc]`. (I *could* ensure that the `/hdd/Videos` path is valid on all the hosts that the repository is on, and I don't mind running `annex fix` on the rare occasion when I need to move it.) + +I thought such an option already exists, but could not find it anywhere within the git-annex manual. + +I considered having the files unlocked (which seems to work well with Btrfs automatically providing thin copies even without needing to use the fragile-looking annex.thin mode), but 1) even missing files appear as regular files when they're unlocked, which is *very* confusing; 2) the files are no longer read-only and I don't like the idea of some tool accidentally damaging them.