Commit Graph

13 Commits

Author SHA1 Message Date
Yuya Nishihara
adbae861a8 mq: fixed ENOENT when qrename to new/directory.patch
MQ patch name can contain slashes, e.g. 'foo/bar.patch'.

Currently "qnew foo/bar.patch" works, but
"qrename foo/bar.patch new/dir.patch" fails with
"No such file or directory".

Also added test case for "qnew foo/bar.patch"
2010-03-28 15:23:11 +09:00
Sune Foldager
12da123bee mq: correct test output 2010-03-05 12:27:23 +01:00
Sune Foldager
533ddd28b6 mq: disallow : in patch names (issue2065) 2010-03-05 10:49:56 +01:00
Sune Foldager
868689388b mq: disallow # (and : on Windows) in patch names (issue2065) 2010-03-04 14:23:54 +01:00
Steve Losh
eea597d740 mq: add parent node IDs to MQ patches on qrefresh/qnew
The goal of this patch is to add the IDs of the parents of applied MQ patches
into the patch file headers whenever qnew or qrefresh are run.

This will serve as a reminder of when the patches last applied cleanly and
will let us do more intelligent things in the future, such as:

    * Resolve conflicts found when qpushing to a new location by merging
      instead of simply showing rejects.

    * Display better diffs of versioned MQ patches because we can tell how the
      patched files have changed in the meantime.

Here are the new rules this patch introduces.  They are checked in this order:

    * If a patch currently has old, plain-style patch headers ("From:" and
      "Date:") do not change the style or add any new headers.

    * If the 'mq.plain' configuration setting is true, only plain-style
      headers will be used for all MQ patches.

    * qnew will initialize new patches with HG-style headers and fill in the
      "# Parent" header with the appropriate parent node.

    * qrefresh will refresh the "# Parent" header with the current parent of
      the current patch.
2010-02-07 10:47:54 -05:00
Augie Fackler
03f43e09ea qnew: ignore force option
This makes the default behavior the same as qnew --force, and
deprecates the force option.
2010-02-07 07:37:05 -06:00
timeless
7f202fbf9b mq: qnew -f should reject merge working directories 2009-12-23 13:09:11 +01:00
Martin Geisler
1f42ec8873 mq: do not call ui.username unless it is necessary
After changeset 54b67f7bd5df, ui.username will abort by default if no
username is set. It is therefore wrong to call ui.username when a
username was provided on the command line.
2009-11-07 00:13:05 +01:00
Mads Kiilerich
b3ac6d2456 mq: qpop now tells which patches are popped
When navigating through a patch series by qpushing and qpopping it was easy to
get lost because qpop was silent. I found myself often running qnext after qpop
to see which patch I just dropped - especially if I was about to qrm it. This
patch makes qpop more symmetric to qpush by showing which patches are
applied/"unapplied".

I think it is a good change even though it changes output by adding a new line
of output.
2009-07-09 23:59:03 +02:00
Martin Geisler
dc4fd3bf46 mq: lowercase output
This extension produces quite a lot of informational messages during
its normal operation and it is hard to say which strings can be
changed and which cannot.
2009-01-03 17:15:21 +01:00
Bernhard Leiner
bf4052120f mq: make qnew patch format consistent with qrefresh (issue1457) 2009-01-12 09:12:35 +01:00
Brendan Cully
05dded9051 mq: use cmdutil.matchfiles instead of match for qnew -f.
Closes issue1368.
2008-10-30 12:38:24 -07:00
Brendan Cully
636630e1d2 mq: put qnew tests into own file, fold in qnew-twice 2008-10-30 12:31:24 -07:00