Some problems with largefiles extension

Martin Geisler martin at geisler.net
Fri Nov 22 05:17:43 CST 2013


Long Vu <long.vu at intelerad.com> writes:

> 4. When upstream repo has largefiles enabled, doing a pull on a local
> repo without largefiles enabled resulted in the following error:
>
>   $ hg pull ../remote --config extensions.largefiles=!
>   abort: unknown repository format: requires features 'largefiles'
> (upgrade Mercurial)!
>   [255]
>
> Is there a way to not have that error on pull (so to have a successful
> pull) but only get the error on update (which will really need to
> fetch the proper largefiles)?

You are right that it is update the really needs the largefiles.
However, when you access a repository, Mercurial will examine the
.hg/requires file to see what features it is expected to understand.
Without the largefiles extension, your Mercurial will abort when it sees
the largefiles line in that file.

I just tested with a clone over HTTP, and the largefiles extension is
clever enough to abort there too:

  % hg pull http://localhost:8000
  pulling from http://localhost:8000/
  abort: remote error:

  This repository uses the largefiles extension.

  Please enable it in your Mercurial config file.

I'm pretty sure there isn't a way to tell the server that is should talk
to non-largefile enabled clients. I believe the assumption is that the
largefiles extension is only deployed within a corporate environment
were you can dictate that everybody should always use the extension.

-- 
Martin Geisler

Python expert for hire: http://careers.stackoverflow.com/mg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://selenic.com/pipermail/mercurial/attachments/20131122/3ce2a43b/attachment.pgp>


More information about the Mercurial mailing list