Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EGit / JGit » JGit as a read-only FileSystemProvider(About a work in progress aiming at viewing a git repository as a file system)
JGit as a read-only FileSystemProvider [message #1832651] Tue, 22 September 2020 18:36 Go to next message
Olivier Cailloux is currently offline Olivier CaillouxFriend
Messages: 37
Registered: July 2009
Member
Dear JGit Community,

I am "finalizing" a (first version of) a FileSystemProvider whose instances are git repositories. It provides read only view.

This permits to view the contents of a git repository using the Files API, and thus abstract the git specificities away, letting code that works for general file system also work when running on some commit in some git repository, and with no need of explicitly checking out the commit on the worktree, as the FileSystem gets the data directly from the history.

It runs on top of JGit.

It is currently part of a bigger software (in development) but I plan to release this separately as I suppose it could be of interest in itself.

Is there some interest for this here? I'd be glad to benefit from the experience of JGit developers, if you are willing to give some some high-level comments on the technical choices I made. I could also donate the code if there is interest in integrating such feature into JGit.

(Indirectly related: https://www.eclipse.org/forums/index.php/m/1828091/.)
Re: JGit as a read-only FileSystemProvider [message #1832716 is a reply to message #1832651] Wed, 23 September 2020 19:43 Go to previous messageGo to next message
Thomas Wolf is currently offline Thomas WolfFriend
Messages: 374
Registered: August 2016
Senior Member
Sure; that sounds interesting. I had begun something similar (an Eclipse EFS atop of JGit) a while ago, but shelved it due to lack of time. Might be useful for EGit to provide a "browse the whole repository content at commit X" functionality. That's missing currently I think; all there is are various ways to compare commits.
Re: JGit as a read-only FileSystemProvider [message #1832766 is a reply to message #1832716] Thu, 24 September 2020 15:46 Go to previous messageGo to next message
Olivier Cailloux is currently offline Olivier CaillouxFriend
Messages: 37
Registered: July 2009
Member
Thanks for your reply.

I just learned, by chance, the existence of an apparently very similar project: ParallelGit. (Damn! I had searched for such projects before starting mine, but had found nothing!) Has anyone had experience with this? It also permits writing, so it looks more complete than mine. I'd abandon mine if it works well, I suppose.
Re: JGit as a read-only FileSystemProvider [message #1832776 is a reply to message #1832766] Thu, 24 September 2020 19:03 Go to previous messageGo to next message
Matthias Sohn is currently offline Matthias SohnFriend
Messages: 1178
Registered: July 2009
Senior Member
There is an implementation from Redhat pending in review here
https://git.eclipse.org/r/c/jgit/jgit/+/156039

I'll ping Alex if he intends to come back to this proposal.
Re: JGit as a read-only FileSystemProvider [message #1832829 is a reply to message #1832776] Fri, 25 September 2020 20:08 Go to previous message
Thomas Wolf is currently offline Thomas WolfFriend
Messages: 374
Registered: August 2016
Senior Member
Hadn't seen this. This seems is rather big. I only skimmed it, but I see a remote file system (can also be used on a local clone) with caching, with built-in clients for SSH (using JSch) and git-protocol, plus also an integrated SSH git server (based on Apache MINA sshd), plus some Ketch integration? All configurable via its own config file handling? Doubtless I've missed a lot of other features in my brief look.
Previous Topic:Egit overrides skip-worktree bit
Next Topic:Programmatically registration of a Project as a Git project
Goto Forum:
  


Current Time: Wed Jun 23 15:53:25 GMT 2021

Powered by FUDForum. Page generated in 0.01426 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top