tests/test-import-unknown.t
author Matt Mackall <mpm@selenic.com>
Sat, 08 Oct 2011 14:18:18 -0500
changeset 15211 1209de02034e
parent 14453 ea3d548132cc
child 16913 f2719b387380
permissions -rw-r--r--
backout: deprecate/hide support for backing out merges This has never worked usefully: - it can't undo a completely unwanted merge, as it leaves the merge in the DAG - it can't undo a faulty merge as that means doing a merge correctly, not simply reverting to one or the other parent Both of these kinds of merge also require coordinated action among developers to avoid the bad merge continuing to affect future merges, so we should stop pretending that backout is of any help here. As backing out a merge now requires a hidden option, it can't be done by accident, but will continue to 'work' for anyone who's already dependent on --parent for some unknown reason.

  $ cat <<EOF >> $HGRCPATH
  > [extensions]
  > purge =
  > EOF

  $ hg init test
  $ cd test
  $ echo a > changed
  $ echo a > removed
  $ echo a > source
  $ hg ci -Am addfiles
  adding changed
  adding removed
  adding source
  $ echo a >> changed
  $ echo a > added
  $ hg add added
  $ hg rm removed
  $ hg cp source copied
  $ hg diff --git > ../unknown.diff

Test adding on top of an unknown file

  $ hg up -qC 0
  $ hg purge
  $ echo a > added
  $ hg import --no-commit ../unknown.diff
  applying ../unknown.diff
  file added already exists
  1 out of 1 hunks FAILED -- saving rejects to file added.rej
  abort: patch failed to apply
  [255]

Test modifying an unknown file

  $ hg revert -aq
  $ hg purge
  $ hg rm changed
  $ hg ci -m removechanged
  $ echo a > changed
  $ hg import --no-commit ../unknown.diff
  applying ../unknown.diff
  abort: cannot patch changed: file is not tracked
  [255]

Test removing an unknown file

  $ hg up -qC 0
  $ hg purge
  $ hg rm removed
  $ hg ci -m removeremoved
  created new head
  $ echo a > removed
  $ hg import --no-commit ../unknown.diff
  applying ../unknown.diff
  abort: cannot patch removed: file is not tracked
  [255]

Test copying onto an unknown file

  $ hg up -qC 0
  $ hg purge
  $ echo a > copied
  $ hg import --no-commit ../unknown.diff
  applying ../unknown.diff
  abort: cannot create copied: destination already exists
  [255]