"hg convert --filemap" and include directive
Ernie Rael
err at raelity.com
Thu Jan 22 22:35:20 UTC 2015
On 1/20/2015 8:43 PM, Mads Kiilerich wrote:
> On 01/20/2015 11:29 PM, Ernie Rael wrote:
>> On 1/19/2015 3:16 PM, Ernie Rael wrote:
>>>
>>> For example, to import all files except doc subdirectory, but
>>> include doc/foo bar.txt and include doc/FAQ renaming it to faq, use:
>>>
>>> # Documentation is to be converted to separate repository.
>>> exclude "doc"
>>> include "doc/foo bar.txt"
>>> rename "doc/FAQ" "faq"
>>>
>>> There is one, and only one, include statement and it is a file.
>>> According to docs, only this file should be converted.
>>
>> Sure enough, with the above example filemap from the wiki the
>> destination only gets a single file. The example can be made to work
>> since "include ." works. The example can be written as
>>> # Documentation is to be converted to separate repository.
>>> include "."
>>> exclude "doc"
>>> include "doc/foo bar.txt"
>>> include "doc/FAQ"
>>> rename "doc/FAQ" "faq"
>> I'll update the wiki in a few days, unless I hear otherwise. The only
>> issue I can see is that "include ." working is an accident and
>> shouldn't be used in the example (in which case implementing the
>> example is tedious and can't be done without enumerating all the top
>> level files/directories).
>
> The relevant code is at
> http://selenic.com/repo/hg/file/a43fdf33a6be/hgext/convert/filemap.py#l103
> . It confirms that rename info only is considered if the includes and
> excludes let the file be converted. I guess you are right that the
> wiki is wrong.
I've updated the wiki to correct the example.
>
> Please consider contributing an improvement to the help if you have
> ideas to how it can be described in a simpler and clearer way.
After carefully considering the docs for the directives (which is, IMO,
precise) my confusion came from looking at the example. Now that the
example works, I think it serves to clarify things.
-ernie
>
> /Mads
>
>
More information about the Mercurial
mailing list