git/list[1] front-page[2] threads[3] people[4] search[5] about
 

A VFS layer - was: SCM ideas from 2003

From
Jon Seymour <jon.seymour@gmail.com>
Date
Apr 19, 2005, 08:07 UTC
Message-ID
<2cfc403205041901074ca57724@mail.gmail.com>
In-Reply-To
<u0tkboecbuybl.fsf@merleau.ntc.nokia.com>
On 19 Apr 2005 08:31:42 +0300, Marc Girod <girod@shire.ntc.nokia.com> wrote:
Show 16 quoted lines
> >>>>> "KS" == Kevin Smith <yarcs@qualitycode.com> writes:
> 
> KS> "what's so special about files ?" where the author suggests that
> KS> existing SCM systems are so blinded by the tradition of file
> KS> orientation that they can't see that there might be alternatives.
> 
> Correct: file orientation is eventually a limitation.
> 
> But there are other dimensions to investigate in order to overcome it.
> The issue is to offer a *location* for the possible versions -- not
> only sequential changes but also alternatives.
> 
> A directory may be considered as a namespace.
> Note that there are other cases of 'containers': archives, packages,
> libraries, etc...
> 
Of course, it is not just SCM's that are "blinded" by file orientation
- every other tool (editors, compilters, etc) that we use has this
orientation. An SCM really has to have some notion of file
orientation, at least at the UI level, because every other tool we use
has the same orientation. The ENVY/VisualAge environments tried to
work with a pure class-level orientation and in some ways that was
great, but most developers hated it precisely because it removed the
file orientation and hence their ability to work with their favourite
tools. IBM/OTI saw the light which is why Eclipse is avowedly a
file-oriented platform.
It seems to me that file-orientation is here to stay and it would be
really cool to layer some kind of virtual filesystem over the git
repository so that different trees become transparently accessible via
different branches of a file system, e.g.:
    /mnt/gitfs/working                  # some kind of writeable
virtual directory over the git cache
    /mnt/gitfs/c157067185209b50b350571fe762c2740ea13fc1  # read-only
tree of commit c157...
    /mnt/gitfs/5b53d3a08d64198d26d4f2323f235790c04aeaab # read-only
tree of comit 5b53...

Given the purity of Linus' concept and his natural orientation towards file systems rather than SCMs, this seems like a rather natural thing to do. If anyone is planning to do this and wants a helper, count me in!

jon.
-- 
homepage: http://www.zeta.org.au/~jon/
blog: http://orwelliantremors.blogspot.com/
Previous: Marc GirodNext: Stéphane Fillod
Message 3 of 4 in “SCM ideas from 2003”
  1. Kevin SmithApr 19, 2005
  2. Marc GirodApr 19, 2005
  3. A VFS layer - was: SCM ideas from 2003Jon Seymour, Apr 19, 2005
  4. Stéphane FillodApr 19, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.