0

I would like to implement a jsr203 file system for accessing git history. Thus, create a path that represents a file in a specific commit, retrieve its content by letting the file system access the .git folder under the cover and read the history, and so on.

I have thought about using the jgit library to read files, and using a Path implementation that (mostly) delegates to the default filesystem Path implementation. An important difference would be that the Path would contain the commit identifier that the user is interested in.

I would have only one file store, but multiple roots: one per commit.

Does this design make sense? Are there hidden difficulties that I might run into? Is there more to plan before starting?

Olivier Cailloux
  • 977
  • 9
  • 24
  • See #4 in the "some questions are still off-topic" list at https://stackoverflow.com/help/on-topic, re: questions asking folks to "find or recommend" a piece of software, a library, etc. – Charles Duffy Aug 05 '19 at 03:04
  • Sorry. I have reworded to explain my problem and how I intend to address it, as suggested. – Olivier Cailloux Aug 05 '19 at 03:43
  • After editiion, this question absolutely does not ask to recommend or find a book, tool, software library, tutorial or other off-site resource. – Olivier Cailloux Aug 05 '19 at 03:58
  • I agree that it no longer fits the off-topic criteria, and have cast a vote towards reopening. That said, it could well be "too broad". – Charles Duffy Aug 05 '19 at 12:24
  • Is what you're asking for feedback on *specifically* the single-store/multiple-roots/unmodified-Path design? I might retitle to something like "Is a single JSR203 store with a root per-commit a reasonable design for a Git filesystem layer?" in that case, just to be very explicit about narrowing the focus as much as possible. – Charles Duffy Aug 05 '19 at 12:28
  • Followed suggestion. – Olivier Cailloux Aug 05 '19 at 23:00

0 Answers0