annotate tests/test-resolve.t @ 20275:2123d27ff75d

backout: avoid update on simple case. Before the changeset the backout process was: 1) go to <target> 2) revert to <target> parent 3) update back to changeset we came from The two update steps can takes a very long time to move back and forth unrelated file change between <target> and current working directory. The new process is just merging current working directory with the parent of <target> using <target> as ancestor. This give the very same result but skip the two updates. On big repo with a lot of files and changes that save a lots of time (x20 for one week window). The "merge" version (hg backout --merge) is still done with upgrades. We could imagine using in memory commit to speed it up but this is another fish.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Wed, 08 Jan 2014 14:53:46 -0800
parents f2719b387380
children f3e37409ecd3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
1 test that a commit clears the merge state.
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
2
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
3 $ hg init repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
4 $ cd repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
5
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
6 $ echo foo > file
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
7 $ hg commit -Am 'add file'
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
8 adding file
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
9
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
10 $ echo bar >> file
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
11 $ hg commit -Am 'append bar'
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
12
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
13
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
14 create a second head
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
15
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
16 $ hg up -C 0
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
17 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
18 $ echo baz >> file
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
19 $ hg commit -Am 'append baz'
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
20 created new head
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
21
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
22 failing merge
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
23
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12316
diff changeset
24 $ hg merge --tool=internal:fail
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
25 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
12314
f2daa6ab514a merge: suggest 'hg up -C .' for discarding changes, not 'hg up -C'
Brodie Rao <brodie@bitheap.org>
parents: 12117
diff changeset
26 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12314
diff changeset
27 [1]
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
28
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
29 $ echo resolved > file
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
30 $ hg resolve -m file
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
31 $ hg commit -m 'resolved'
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
32
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
33 resolve -l, should be empty
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
34
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
35 $ hg resolve -l
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
36
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
37 test crashed merge with empty mergestate
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
38
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
39 $ mkdir .hg/merge
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
40 $ touch .hg/merge/state
11451
51021f4c80b5 resolve: do not crash on empty mergestate
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
41
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
42 resolve -l, should be empty
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
43
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
44 $ hg resolve -l
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
45
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
46 $ cd ..