--- /dev/null
+Dear Joey,
+
+During DistriBits 2024, we discussed a concept that you seemed to like: emulating versioned tree export on a special remote with a non-versioned filesystem. This could be a generic mechanism of git-annex. Maybe a new option for the special remote (say: 'versioning = yes / no / emulated' or 'exporttree = yes / no / emulated')?
+
+The idea is to save target files in the remote at paths reflecting the ones in the repo, but:
+- create an extra directory at the end of the path identical to the filename,
+- directory name includes the original extension of the file, which may seem a bit odd, but ensures no ambiguities,
+- inside the directory, save the file under filename = key (preferably add the original extension).
+
+Example: the content of the git-annex repo and remote filesystem after a few tree exports:
+
+ [git-annex]
+ repo-name
+ |
+ |-- phd
+ | |
+ | |-- thesis.pdf
+ | |-- images
+ | |
+ | |-- figure.png
+ | |-- diagram.png
+ |
+ |-- guidelines.pdf
+
+
+ [remote filesystem]
+ repo-name
+ |
+ |-- phd
+ | |
+ | |-- thesis.pdf
+ | | |
+ | | |--- SHA256E-...-key1.pdf
+ | | |--- SHA256E-...-key2.pdf
+ | | |--- SHA256E-...-key3.pdf
+ | |
+ | |-- images
+ | |
+ | |-- figure.png
+ | | |
+ | | |-- SHA256E-...-key1.png
+ | |
+ | |-- diagram.png
+ | |
+ | |-- SHA256E-...-key1.png
+ | |-- SHA256E-...-key2.png
+ |
+ |-- guidelines.pdf
+ | |
+ | |-- SHA256E-...-key1.pdf
+
+----------------------
+
+Advantages:
+- easy to implement,
+- you get (kind of) versioning on any POSIX-like filesystem,
+- older versions of files are never overwritten (history tracking),
+- it's sufficient to push only the changed files,
+- users can use the remote filesystem directly, as it represents something meaningful.
+
+Disadvantages:
+- not perfect,
+- users need to accept the inconvenience caused by file naming on the bottom level,
+- it may be hard to find the right file version in the remote, especially if there are lots of them;
+ - modification times will certainly help here,
+ - can we concatenate some extra information to the file names that could help in identification?
+
+
+Feel free to contact me, I'd be happy to discuss and help make this happen.