large repository access

Kastner Masilko, Friedrich kastner-masilko at at.festo.com
Mon Oct 14 15:34:37 UTC 2013


> From: Franklin Siler [mailto:fsiler at gmail.com]
> 
> Similar in some ways, yes, but it's basically doing file tracking on a
> working copy.  What I'm looking for is a way to access the files stored
> in a repository without ever checking out a working copy.

OK, just to be sure now: does the repository reside physically on the same machine you try to access the files with? And do you mean direct access via standard OS file I/O to the contents of a specific file?

If the first question is answered with yes, IMHO  the most practical way to achieve access to a subset of a working copy is via the file-system as temporary memory. For this there are various ways, with the two proposals (cat and revert) being perhaps the most prominent ones. If the second question is also a clear yes, I think there is a big problem: no standard OS file I/O takes versions into account. Some exotic file systems may do so, but not over standard commands.

Would it capture your initial idea, if the workflow would be as follows:

1. Get a bare repository in e.g. /repos/test, with the only directory there being the .hg folder.
2. Via OS infrastructure and driver (be it kernel- or userspace), mount a specific version from /repos/test under e.g. /repos/rev<HASH> with something like the Linux command "mount /repos/test /repos/rev10 -t hgfs -o revision=<HASH>".
3. Every file I/O to a path under /repos/rev<HASH> will directly access the appropriate file/directory in the repository /repos/test at revision <HASH>.
4. While for read operations this might be easy, for write an implicit commit would have to be done (at least on a sync). If the later is too hard to do, simply make the mount an implicit read-only.

> From: Franklin Siler [mailto:fsiler at gmail.com]
> 
> it seems like a possibility; are you aware of any fixed file size
> limits or anything like that?  A quick search of Bugzilla didn't reveal
> anything directly on point.

http://mercurial.selenic.com/wiki/HandlingLargeFiles

Regards,
Fritz



Development Software Systems
Festo Gesellschaft m.b.H.
Linzer Strasse 227
Austria - 1140 Wien

Firmenbuch Wien
FN 38435y
UID: ATU14650108

Tel: +43(1)91075-198
Fax: +43(1)91075-282
www.festo.at

Der Inhalt dieser E-Mail und moeglicher Anhaenge sind ausschliesslich fuer den bezeichneten Adressaten bestimmt.
Jede Form der Kenntnisnahme, Veroeffentlichung, Vervielfaeltigung oder Weitergabe des Inhalts dieser E-Mail und
moeglicher Anhaenge durch unberechtigte Dritte ist unzulaessig. Wir bitten Sie, sich mit dem Absender der E-Mail in
Verbindung zu setzen, falls Sie nicht der Adressat dieser E-Mail sind sowie das Material von Ihrem Computer zu loeschen.

This e-mail and any attachments are confidential and intended solely for the addressee. The perusal, publication, copying or
dissemination of the contents of this e-mail by unauthorised third parties is prohibited. If you are not the intended recipient of this
e-mail, please delete it and immediately notify the sender.




More information about the Mercurial mailing list