view tests/test-1102.t @ 24993:be58bd30a478

amend: use dirstateguard instead of dirstate.invalidate Before this patch, "cmdutil.amend()" uses "dirstate.invalidate()" as a kind of "restore .hg/dirstate to the original status" during a failure. But it just discards changes in memory, and doesn't actually restore ".hg/dirstate". Then, it can't work as expected, if "dirstate.write()" is executed while processing. This patch uses "dirstateguard" instead of "dirstate.invalidate()" to restore ".hg/dirstate" at failure even if "dirstate.write()" is executed before failure. This is a part of preparations to fix the issue that the recent (in memory) dirstate isn't visible to external process (e.g. "precommit" hook).
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Thu, 07 May 2015 12:07:10 +0900
parents f2719b387380
children
line wrap: on
line source

  $ rm -rf a
  $ hg init a
  $ cd a
  $ echo a > a
  $ hg ci -Am0
  adding a
  $ hg tag t1 # 1
  $ hg tag --remove t1 # 2

  $ hg co 1
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ hg tag -f -r0 t1
  $ hg tags
  tip                                3:a49829c4fc11
  t1                                 0:f7b1eb17ad24

  $ cd ..