tests/test-merge5.t
author Jun Wu <quark@fb.com>
Sat, 07 May 2016 14:12:23 +0100
changeset 29132 12769703d4ba
parent 28065 6b1fc09c699a
child 45840 527ce85c2e60
permissions -rw-r--r--
dispatch: always load extensions before running shell aliases (issue5230) Before this patch, we may or may not load extensions for shell aliases depending on whether the command is abbreviated or not. Loading extensions may have useful side effects to shell aliases. For example, the pager extension does not work for shell aliases. This patch removes the code checking shell aliases before loading extensions to give the user a more consistent experience. It may hurt performance for shell aliases a bit without chg but the correctness seems worth it. It will also make the behavior consistent with chg since chg will always load all extensions before running commands.

  $ hg init
  $ echo This is file a1 > a
  $ echo This is file b1 > b
  $ hg add a b
  $ hg commit -m "commit #0"
  $ echo This is file b22 > b
  $ hg commit -m "comment #1"
  $ hg update 0
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ rm b
  $ hg commit -A -m "comment #2"
  removing b
  created new head
  $ hg update 1
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ rm b
  $ hg update -c 2
  abort: uncommitted changes
  [255]
  $ hg revert b
  $ hg update -c 2
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  $ mv a c

Should abort:

  $ hg update 1
  abort: uncommitted changes
  (commit or update --clean to discard changes)
  [255]
  $ mv c a

Should succeed:

  $ hg update 1
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved