author Gregory Szorc <gps@mozilla.com>
Fri, 20 Jun 2014 23:37:15 -0700
changeset 421 36eb33f9058d
parent 374 66a7369da9ee
permissions -rw-r--r--
More reviewboard extension improvements * Identifier can now come from active bookmark * Tests for diffs * Fix bug in diff generation

Modify Mercurial's MQ extension by altering several commands and adding a few more. Install it by pointing your ~/.hgrc at it, eg::

  mq =
  mqext = ~/lib/hg/mqext

Commands added:

  :qshow: Display a single patch (similar to 'export')
  :qtouched: See what patches modify which files

Commands not related to mq:

  :reviewers: Suggest potential reviewers for a patch
  :bugs: Display the bugs that have touched the same files as a patch
  :components: Suggest a potential component for a patch


If you would like to have any change to your patch repository committed to
revision control, mqext adds -Q and -M flags to all mq commands that modify the
patch repository. -Q commits the change to the patch repository, and -M sets
the log message used for that commit (but mqext provides reasonable default
messages, tailored to the specific patch repo-modifying command, so you'll
rarely use this.)

The following commands are modified:

  - qrefresh
  - qnew
  - qrename
  - qdelete
  - qimport
  - qfinish

The expected usage is to add the 'mqcommit=auto' option to the 'mqext' section
of your ~/.hgrc so that all changes are autocommitted if you are using a
versioned patch queue, and to do nothing if not::

  mqcommit = auto

You could also set it to 'yes' to force it to try to commit all changes, and
error out if you don't have (or have forgotten to create) a patch repository.

Alternatively, if you only want a subset of commands to autocommit, you may add
the -Q option to all relevant commands in your ~/.hgrc::

  qnew = -Q
  qdelete = -Q
  qimport = -Q