view tests/test-issue619.t @ 23553:7cebb6a8c75f

namespaces: introduce a generic way to map between names and nodes This patch begins the work to provide a way to register a namespace to handle 'names'. Benefits of this would be, - improved templating: This would provide {name} which could output any branch, bookmark, tag, or any extension registered namespace all without having the extension doing any extra work - improved tab completion: Since this provides a single source of all 'names', tab completion would not need to know of each namespace - changeset lookup: Similar to before, a unified place to get all 'names' will allow finding changesets without any extension code having to reimplement this Also, d226fe36e362 has shown us that for internal code which expects a certain type of method or behavior, we should provide an easy way for extensions to check this behavior.
author Sean Farley <sean.michael.farley@gmail.com>
date Sun, 14 Dec 2014 12:29:28 -0800
parents 0c432696dae3
children 2fc86d92c4a9
line wrap: on
line source

http://mercurial.selenic.com/bts/issue619

  $ hg init
  $ echo a > a
  $ hg ci -Ama
  adding a

  $ echo b > b
  $ hg branch b
  marked working directory as branch b
  (branches are permanent and global, did you want a bookmark?)
  $ hg ci -Amb
  adding b

  $ hg co -C 0
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved

Fast-forward:

  $ hg merge b
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  (branch merge, don't forget to commit)
  $ hg ci -Ammerge

Bogus fast-forward should fail:

  $ hg merge b
  abort: merging with a working directory ancestor has no effect
  [255]

Even with strange revset (issue4465)

  $ hg merge ::.
  abort: merging with a working directory ancestor has no effect
  [255]