changeset 15351:5f3142bd23b0 stable

largefiles: remove redundant documentation The extension help text already covered what was in usage.txt and design.txt is now moved to the wiki: http://mercurial.selenic.com/wiki/LargefilesExtension
author Martin Geisler <mg@aragost.com>
date Mon, 24 Oct 2011 09:54:02 +0200
parents 8b8dd13295db
children b74f74b482d8
files hgext/largefiles/design.txt hgext/largefiles/usage.txt
diffstat 2 files changed, 0 insertions(+), 101 deletions(-) [+]
line wrap: on
line diff
--- a/hgext/largefiles/design.txt	Sun Oct 23 14:25:48 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-= largefiles - manage large binary files =
-This extension is based off of Greg Ward's bfiles extension which can be found
-at http://mercurial.selenic.com/wiki/BfilesExtension.
-
-== The largefile store ==
-
-largefile stores are, in the typical use case, centralized servers that have
-every past revision of a given binary file.  Each largefile is identified by
-its sha1 hash, and all interactions with the store take one of the following
-forms.
-
--Download a bfile with this hash
--Upload a bfile with this hash
--Check if the store has a bfile with this hash
-
-largefiles stores can take one of two forms:
-
--Directories on a network file share
--Mercurial wireproto servers, either via ssh or http (hgweb)
-
-== The Local Repository ==
-
-The local repository has a largefile store in .hg/largefiles which holds a
-subset of the largefiles needed. On a clone only the largefiles at tip are
-downloaded. When largefiles are downloaded from the central store, a copy is
-saved in this store.
-
-== The User Cache ==
-
-largefiles in a local repository store are hardlinked to files in the user
-cache. Before a file is downloaded we check if it is in the global cache,
-hard-linking to the local store if we find it.
-
-== Implementation Details ==
-
-Each largefile has a standin which is in .hglf. The standin is tracked by
-Mercurial.  The standin contains the SHA1 hash of the largefile. When a
-largefile is added/removed/copied/renamed/etc the same operation is applied to
-the standin. Thus the history of the standin is the history of the largefile.
-
-For performance reasons, the contents of a standin are only updated before a
-commit.  Standins are added/removed/copied/renamed from add/remove/copy/rename
-Mercurial commands but their contents will not be updated. The contents of a
-standin will always be the hash of the largefile as of the last commit. To
-support some commands (revert) some standins are temporarily updated but will
-be changed back after the command is finished.
-
-A Mercurial dirstate object tracks the state of the largefiles. The dirstate
-uses the last modified time and current size to detect if a file has changed
-(without reading the entire contents of the file).
--- a/hgext/largefiles/usage.txt	Sun Oct 23 14:25:48 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-Largefiles allows for tracking large, incompressible binary files in Mercurial
-without requiring excessive bandwidth for clones and pulls.  Files added as
-largefiles are not tracked directly by Mercurial; rather, their revisions are
-identified by a checksum, and Mercurial tracks these checksums.  This way, when
-you clone a repository or pull in changesets, the large files in older
-revisions of the repository are not needed, and only the ones needed to update
-to the current version are downloaded.  This saves both disk space and
-bandwidth.
-
-If you are starting a new repository or adding new large binary files, using
-largefiles for them is as easy as adding '--large' to your hg add command.  For
-example:
-
-$ dd if=/dev/urandom of=thisfileislarge count=2000
-$ hg add --large thisfileislarge
-$ hg commit -m 'add thisfileislarge, which is large, as a largefile'
-
-When you push a changeset that affects largefiles to a remote repository, its
-largefile revisions will be uploaded along with it.  Note that the remote
-Mercurial must also have the largefiles extension enabled for this to work.
-
-When you pull a changeset that affects largefiles from a remote repository,
-nothing different from Mercurial's normal behavior happens.  However, when you
-update to such a revision, any largefiles needed by that revision are
-downloaded and cached if they have never been downloaded before.  This means
-that network access is required to update to revision you have not yet updated
-to.
-
-If you already have large files tracked by Mercurial without the largefiles
-extension, you will need to convert your repository in order to benefit from
-largefiles.  This is done with the 'hg lfconvert' command:
-
-$ hg lfconvert --size 10 oldrepo newrepo
-
-By default, in repositories that already have largefiles in them, any new file
-over 10MB will automatically be added as largefiles.  To change this
-threshhold, set [largefiles].size in your Mercurial config file to the minimum
-size in megabytes to track as a largefile, or use the --lfsize option to the
-add command (also in megabytes):
-
-[largefiles]
-size = 2
-
-$ hg add --lfsize 2
-
-The [largefiles].patterns config option allows you to specify specific
-space-separated filename patterns (in shell glob syntax) that should always be
-tracked as largefiles:
-
-[largefiles]
-patterns = *.jpg *.{png,bmp} library.zip content/audio/*