annotate tests/test-topic-stack-complex.t @ 5926:aca07ac01167

divergence-resolution: use last evolution date to choose p1 when merging Before this patch, we choose the minimum revision as p1 while merging the two divergent csets which had a drawback that if independent user resolve the same divergence, their final resolved cset would have different hashes (because of 'divergence_source_local' and 'divergence_source_other' extras). Now, we decide the p1 on the basis of which of the two divergent cset was rewritten more recently. This new logic removes the "different hash" problem. To save us from big output changes in the tests due to this change, I also added the second factor i.e revision_number while sorting the csets wrt dates (as date is same for all the csets in tests) to fallback to the old way of picking the revision i.e choosing the minimum rev number. And to demonstrate that now divergence resolution is independent of which side user run the `hg evolve --content-div` resolved cset id won't change, I have added a separate test file. Flag --config devel.default-date='...' is being used here to record a custom date in the obsmarkers.
author Sushil khanchi <sushilkhanchi97@gmail.com>
date Wed, 03 Mar 2021 12:40:59 +0530
parents c2fab88e6d60
children 03410b04cf10
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
1 Testing `hg stack` on complex cases when we have multiple successors because of
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
2 divergence, split etc.
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
3 $ . "$TESTDIR/testlib/topic_setup.sh"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
4
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
5 Setup
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
6
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
7 $ cat << EOF >> $HGRCPATH
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
8 > [experimental]
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
9 > evolution = all
5079
1f92a6aa40d6 evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 4998
diff changeset
10 > evolution.allowdivergence = True
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
11 > [ui]
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
12 > interactive = True
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
13 > [extensions]
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
14 > show =
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
15 > EOF
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
16 $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
17
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
18 $ hg init test
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
19 $ cd test
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
20 $ echo foo > foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
21 $ hg add foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
22 $ hg ci -m "Added foo"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
23 $ hg phase -r . --public
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
24 $ hg topic foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
25 marked working directory as topic: foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
26 $ echo a > a
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
27 $ echo b > b
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
28 $ hg ci -Aqm "Added a and b"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
29 $ echo c > c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
30 $ echo d > d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
31 $ hg ci -Aqm "Added c and d"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
32 $ echo e > e
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
33 $ echo f > f
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
34 $ hg ci -Aqm "Added e and f"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
35 $ hg show work
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
36 @ f1d3 (foo) Added e and f
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
37 o 8e82 (foo) Added c and d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
38 o 002b (foo) Added a and b
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
39 o f360 Added foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
40
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
41 Testing in case of split within the topic
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
42
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
43 $ hg stack
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
44 ### topic: foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
45 ### target: default (branch)
4067
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
46 s3@ Added e and f (current)
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
47 s2: Added c and d
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
48 s1: Added a and b
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
49 s0^ Added foo (base)
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
50 $ hg prev
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
51 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
4161
3c28f8a3a5a5 prev: also use stack shortcut in output when possible
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4067
diff changeset
52 [s2] Added c and d
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
53
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
54 $ echo 0 > num
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
55 $ cat > editor.sh << '__EOF__'
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
56 > NUM=$(cat num)
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
57 > NUM=`expr "$NUM" + 1`
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
58 > echo "$NUM" > num
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
59 > echo "split$NUM" > "$1"
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
60 > __EOF__
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
61 $ export HGEDITOR="\"sh\" \"editor.sh\""
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
62
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
63 $ hg split << EOF
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
64 > y
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
65 > y
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
66 > n
4294
8974a05a49fa split: rework the prompt to be more standard
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4293
diff changeset
67 > c
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
68 > EOF
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
69 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
70 adding c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
71 adding d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
72 diff --git a/c b/c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
73 new file mode 100644
4712
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
74 examine changes to 'c'?
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
75 (enter ? for help) [Ynesfdaq?] y
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
76
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
77 @@ -0,0 +1,1 @@
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
78 +c
4712
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
79 record change 1/2 to 'c'?
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
80 (enter ? for help) [Ynesfdaq?] y
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
81
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
82 diff --git a/d b/d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
83 new file mode 100644
4712
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
84 examine changes to 'd'?
e2c548cc83b5 tests: update output for shorted prompts from Mercurial
Martin von Zweigbergk <martinvonz@google.com>
parents: 4633
diff changeset
85 (enter ? for help) [Ynesfdaq?] n
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
86
4294
8974a05a49fa split: rework the prompt to be more standard
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4293
diff changeset
87 continue splitting? [Ycdq?] c
3431
2e703ed1c713 evolve: update output for wider reporting of troubled changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 3417
diff changeset
88 1 new orphan changesets
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
89
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
90 $ hg stack
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
91 ### topic: foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
92 ### target: default (branch)
4432
5da1d162ad50 stack: rename unstable -> orphan
Anton Shestakov <av6@dwimlabs.net>
parents: 4294
diff changeset
93 s4$ Added e and f (orphan)
4067
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
94 s3@ split2 (current)
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
95 s2: split1
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
96 s1: Added a and b
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
97 s0^ Added foo (base)
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
98
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
99 $ hg show work
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
100 @ 5cce (foo) split2
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
101 o f26c (foo) split1
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
102 | * f1d3 (foo) Added e and f
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
103 | x 8e82 (foo) Added c and d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
104 |/
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
105 o 002b (foo) Added a and b
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
106 o f360 Added foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
107
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
108 $ hg prev
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
109 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4161
3c28f8a3a5a5 prev: also use stack shortcut in output when possible
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4067
diff changeset
110 [s2] split1
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
111 $ echo foo > c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
112 $ hg diff
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
113 diff -r f26c1b9addde c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
114 --- a/c Thu Jan 01 00:00:00 1970 +0000
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
115 +++ b/c Thu Jan 01 00:00:00 1970 +0000
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
116 @@ -1,1 +1,1 @@
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
117 -c
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
118 +foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
119
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
120 $ hg amend
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
121 1 new orphan changesets
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
122 $ hg show work
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
123 @ 7d94 (foo) split1
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
124 | * 5cce (foo) split2
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
125 | x f26c (foo) split1
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
126 |/
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
127 | * f1d3 (foo) Added e and f
3277
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
128 | x 8e82 (foo) Added c and d
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
129 |/
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
130 o 002b (foo) Added a and b
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
131 o f360 Added foo
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
132
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
133 $ hg stack
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
134 ### topic: foo (2 heads)
0a6954bd6502 tests: add a test showing traceback on `hg stack` in case of split
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
135 ### target: default (branch), 2 behind
4432
5da1d162ad50 stack: rename unstable -> orphan
Anton Shestakov <av6@dwimlabs.net>
parents: 4294
diff changeset
136 s4$ Added e and f (orphan)
5da1d162ad50 stack: rename unstable -> orphan
Anton Shestakov <av6@dwimlabs.net>
parents: 4294
diff changeset
137 s3$ split2 (orphan)
4067
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
138 s2@ split1 (current)
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
139 s1: Added a and b
fb4801478d5d stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3431
diff changeset
140 s0^ Added foo (base)
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
141
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
142 Test case with divergence
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
143 -------------------------
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
144
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
145 $ hg evolve --all
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
146 move:[s3] split2
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
147 atop:[s2] split1
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
148 move:[s4] Added e and f
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
149 $ hg up s4
4577
bcd52ce0916d evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 4436
diff changeset
150 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
151 $ hg id -r .
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
152 ec94a1ed1330 tip
4624
c9798965b1f4 revset: switch internal uses and tests to `predecessors` from legacy name
Matt Harbison <matt_harbison@yahoo.com>
parents: 4577
diff changeset
153 $ hg up --hidden 'min(predecessors(.))'
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
154 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
155 updated to hidden changeset f1d3649d6a8b
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
156 (hidden revision 'f1d3649d6a8b' was rewritten as: ec94a1ed1330)
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
157 working directory parent is obsolete! (f1d3649d6a8b)
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
158 (use 'hg evolve' to update to its successor: ec94a1ed1330)
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
159 $ hg amend -d '0 1'
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
160 1 new orphan changesets
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
161 2 new content-divergent changesets
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
162 $ hg rebase -r . -d ec94a1ed1330~1
5647
c2fab88e6d60 tests: rebase now produces different "one-line summary" output
Martin von Zweigbergk <martinvonz@google.com>
parents: 5297
diff changeset
163 rebasing 9:eb3b16fef8ea tip foo "Added e and f"
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
164 $ hg stack
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
165 ### topic: foo (2 heads)
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
166 ### target: default (branch)
4435
7915aef191ff stack: show content and phase divergent state and symbol
Anton Shestakov <av6@dwimlabs.net>
parents: 4432
diff changeset
167 s5$ Added e and f (content divergent)
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
168 s3^ split2 (base)
4436
ef155f624670 stack: make @ (current) more important than $ (some sort of unstable)
Anton Shestakov <av6@dwimlabs.net>
parents: 4435
diff changeset
169 s4@ Added e and f (content divergent current)
4189
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
170 s3: split2
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
171 s2: split1
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
172 s1: Added a and b
36d559ca5332 stack-index: add some test featuring content diversion
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4161
diff changeset
173 s0^ Added foo (base)
4190
883e75e0a810 topicidx: stop assigning index number to obsolete changesets
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4189
diff changeset
174
883e75e0a810 topicidx: stop assigning index number to obsolete changesets
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4189
diff changeset
175 $ hg evolve --content-divergent -r ec94a1ed1330
883e75e0a810 topicidx: stop assigning index number to obsolete changesets
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4189
diff changeset
176 merge:[s5] Added e and f
883e75e0a810 topicidx: stop assigning index number to obsolete changesets
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4189
diff changeset
177 with: [s4] Added e and f
4210
470ba668687a evolve: do not try to display stack index of changeset who do not have one
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4190
diff changeset
178 base: [3] Added e and f
4190
883e75e0a810 topicidx: stop assigning index number to obsolete changesets
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4189
diff changeset
179 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
5297
a73cdef2e33f evolve: rename `evolve_source_*` to `divergence_source_*`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 5293
diff changeset
180 working directory is now at 692bc8b2aa4d
4998
88b816a9d990 evolve: preserve date when resolving content-divergence (issue6202)
Manuel Jacob <me@manueljacob.de>
parents: 4712
diff changeset
181
5277
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5079
diff changeset
182 $ hg log -r . -T '{date|hgdate}\n'
4998
88b816a9d990 evolve: preserve date when resolving content-divergence (issue6202)
Manuel Jacob <me@manueljacob.de>
parents: 4712
diff changeset
183 0 1