MQ usability

TK Soh teekaysoh at gmail.com
Sun Aug 16 21:13:39 CDT 2009


On Sun, Aug 16, 2009 at 5:26 AM, Matt Mackall<mpm at selenic.com> wrote:
> On Sun, 2009-08-16 at 01:42 +0000, TK Soh wrote:
>> On Sat, Aug 15, 2009 at 10:06 PM, Stuart W. Marks<smarks at smarks.org> wrote:
>> > Peter Williams wrote:
>> >> On 15/08/09 13:13, Stuart W. Marks wrote:
>> >>> But for MQ, the patch is mainly an internal storage format.
>> >>
>> >> No, it's not.  In a lot of cases, MQ is being used to generate patch
>> >> sets for distribution to users who aren't necessarily using MQ to manage
>> >> them at there end.
>> >
>> > As Isaac Jurado pointed out, "hg export" will generate a patch, as will "hg
>> > diff" and "hg qdiff". I should also add that even if MQ stores a patch file in
>> > git format, these commands will produce output in conventional diff format if
>> > their options and defaults indicate that they should. (Of course, they may also
>> > lose information in the process.)
>> >
>> > Anyway, the point is that even if MQ were to change its patch storage format,
>> > you could still share conventional patches with non-MQ users by using these
>> > commands instead of accessing the patch files directly.
>>
>> Please correct me if I am wrong, but the need to use git format is
>> primarily to fix what conventional patch cannot support, namely the
>> binary delta and permission change, etc. So on this kind of changes,
>> we already can't share changes by exporting in conventional patch format.
>>
>> No offence, but how anyone would think maintaining conventional patch
>> format outweigh the risk of losing changes is really beyond me.
>> Perhaps I am just one of the less significant few that have to deal
>> with binary files.
>>
>>     $ hg qnew binaryfile
>>     $ hg add mypicture.png
>>     $ hg qrefresh
>>     $ hg qpop
>>     patch queue now empty
>>     $ hg qpush
>>     applying binaryfile
>>     patch binaryfile is empty      <== data lost !!!
>>     now at: binaryfile
>
> Here's how this topic goes, every time for the past four years:
>
> Q: Can we make --git the default?
> A: No, it's non-standard.
> Q: How about just for mq?
> A: No.
> Q: Can we get a warning or something when a patch is going to lose
> information?
> A: Sounds great, send a patch.
>
> TK, you're an old-timer around here, so you should know the answers to
> these questions already.

I wouldn't claim that. Old as I am, still trying to learn.



More information about the Mercurial-devel mailing list