mpm at selenic.com
Sun Aug 16 00:26:14 CDT 2009
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?
Q: Can we get a warning or something when a patch is going to lose
A: Sounds great, send a patch.
TK, you're an old-timer around here, so you should know the answers to
these questions already.
http://selenic.com : development and support for Mercurial and Linux
More information about the Mercurial-devel