view tests/test-issue842.t @ 35659:821d8a5ab4ff

match: do not weirdly include explicit files excluded by -X option Actually, this was the original behavior. Before a83a7d27911e, "log" and "files" showed nothing if "FILE -X FILE" was specified, whereas "debugwalk" got confused by an explicit FILE pattern. Under the hood, "log" and "files" use m() and ctx.matches(m) respectively, and "debugwalk" uses ctx.walk(m). I suspect dirstate.walk() goes wrong in _walkexplicit(), which seems to blindly trust m.files(). I reckon the original "log"/"files" behavior is correct, and drop the hack from the differencematcher.
author Yuya Nishihara <yuya@tcha.org>
date Tue, 16 Jan 2018 22:14:33 +0900
parents 2fc86d92c4a9
children 55c6ebd11cb9
line wrap: on
line source

https://bz.mercurial-scm.org/842

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

  $ hg up -r0000
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved

  $ echo bar > a

Should issue new head warning:

  $ hg ci -Amb
  adding a
  created new head

  $ hg up -r0000
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved

  $ echo stuffy > a

Should not issue new head warning:

  $ hg ci -q -Amc

  $ hg up -r0000
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved

  $ echo crap > a
  $ hg branch testing
  marked working directory as branch testing
  (branches are permanent and global, did you want a bookmark?)

Should not issue warning:

  $ hg ci -q -Amd