开发者

Version control with MVFS

开发者 https://www.devze.com 2023-01-06 09:46 出处:网络
Is there any version control system available with an MVFS-like virtual file system in addition to the ClearCase?

Is there any version control system available with an MVFS-like virtual file system in addition to the ClearCase?

I can't find any.

Thank开发者_Python百科s, Mart


No (in a read/write remote access).

MVFS (MultiVersion Filesystem) is about encapsulating the native filesystem to combine:

  • network access
  • with version files through dynamic views

To my knowledge, only ClearCase offers that (especially on that many platforms: Unix, Linux, Windows, Hp).

Other VCS offer read-only remote access like Gitfs and svnfs.

From "Filesystem Interface for the Git Version Control System" (pdf, from Reilly GRANT):

The Filesystem Interface to Git (known by the acronym “figfs”, pronounced like “figs”) allows developers to work with a project in a Git repository just like a local filesystem. This means that all the branchs, tags, and revisions are available for browsing without having to check anything out.

The ability to access past revisions in a repository via the filesystem has been implemented before.
Gitfs and svnfs[12] (which is the same as gitfs except that it uses Subversion) implement a read-only view of repository history.
The advantage of gitfs over svnfs is that Git is a distributed system and thus maintains a copy of the entire repository on the local machine, eliminating network lag when fetching revisions.
A commercial system, Rational ClearCase[9], offers a writable filesystem view of the repository, MVFS (MultiVersion File System), as an alternative to checking out files to the local filesystem. As with svnfs the performance of this system suffers from the need to query over the network for uncached file data.
Figfs eliminates this problem because a Git repository is stored entirely locally.


FYI, one of the nice things about ClearCase is that it monitors system calls to typical file operations and can determine your real dependencies in a build. This can be important when building complex systems. This capability has been added to GNU make (runs on *nix systems only though) in http://sourceforge.net/projects/posixamake/; the author's currently working on adding a derived object cache using MySQL.

0

精彩评论

暂无评论...
验证码 换一张
取 消