view tests/test-issue842.t @ 35998:dce43aaaf209

lfs: allow a pointer to be extracted from a context that removes the file This is needed to let 'set:lfs()' and '{lfs_files}' work normally on removed files. Yuya suggested returning a null pointer for removed files, instead of the pointer from the parent. The first attempt at this was to return None for a non LFS file, and a (pointer, ctx) tuple to hold the pointer and context (or parent pointer and context for a removed file). But this complicated the callers, even the ones that didn't care about removed files. Instead, let's use {} to represent a removed pointer. This has the added convenience of being a useful representation in the template language, and only affects the callers that care about removed files (and only slightly). Since pointers are explicitly serialized with a call to a member function, there is no danger of writing these to disk.
author Matt Harbison <matt_harbison@yahoo.com>
date Sat, 27 Jan 2018 18:56:24 -0500
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