[PATCH 3 of 3 RFC] import: add new --faithful flag to use metadata but relax checks

Augie Fackler raf at durin42.com
Fri Mar 11 16:12:01 EST 2016


On Fri, Mar 11, 2016 at 3:11 PM, Pierre-Yves David
<pierre-yves.david at ens-lyon.org> wrote:
>
>
> On 03/11/2016 06:25 PM, Augie Fackler wrote:
>>
>> # HG changeset patch
>> # User Augie Fackler <augie at google.com>
>> # Date 1457539063 18000
>> #      Wed Mar 09 10:57:43 2016 -0500
>> # Node ID 7d53477e4496e8f2b16b12ed445407e79bbb787b
>> # Parent  602504c64084d85820c883a43b02951a61e992f5
>> # EXP-Topic import
>> import: add new --faithful flag to use metadata but relax checks
>>
>> Sometimes it's helpful to import a patch with as much of the metadata
>> (especially parents) intact as possible, but some bit of extra didn't
>> make the trip through the exported patch. This gives users a tool to
>> preserve as much metadata as possible without having to get an exact
>> byte-for-byte match on the import process.
>
>
> In my opinion, the key part here is to:
> 1) bypass working copy
> 2) use the parent informations
>
> I would rather see a name related to parents that "faithful". I don't
> "faithful" is very explicite and it mostly make sense in regards with
> --exact.

I'm not in love with the name "faithful", so I'd love constructive
suggestions about what we could name the flag.

>
>
> On a wider topic. I woudl rather see extra properly exported so that --exact
> get mostly useful than "yet another flag". But that another flag is probably
> needed as a fallback anyway so…

Yes, the diff format is known to be lossy, so even when you're
exporting changeset extra perfectly, you're still going to have
problems where diff (even git-diff) loses some data, and something
like --exact that doesn't verify nodeids is really what you need.


More information about the Mercurial-devel mailing list