Mercurial > hg
view tests/test-merge8.t @ 26748:5ba0a99ff27f
dirstate: make dirstate.write() callers pass transaction object to it
Now, 'dirstate.write(tr)' delays writing in-memory changes out, if a
transaction is running.
This may cause treating this revision as "the first bad one" at
bisecting in some cases using external hook process inside transaction
scope, because some external hooks and editor process are still
invoked without HG_PENDING and pending changes aren't visible to them.
'dirstate.write()' callers below in localrepo.py explicitly use 'None'
as 'tr', because they can assume that no transaction is running:
- just before starting transaction
- at closing transaction, or
- at unlocking wlock
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Sat, 17 Oct 2015 01:15:34 +0900 |
parents | f2719b387380 |
children | eb586ed5d8ce |
line wrap: on
line source
Test for changeset ba7c74081861 (update dirstate correctly for non-branchmerge updates) $ hg init a $ cd a $ echo a > a $ hg add a $ hg commit -m a $ cd .. $ hg clone a b updating to branch default 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd a $ hg mv a b $ hg commit -m move $ echo b >> b $ hg commit -m b $ cd ../b $ hg pull ../a pulling from ../a searching for changes adding changesets adding manifests adding file changes added 2 changesets with 2 changes to 1 files (run 'hg update' to get a working copy) $ hg update 1 files updated, 0 files merged, 1 files removed, 0 files unresolved $ cd ..