Mercurial > evolve
annotate tests/test-amend-merge.t @ 6889:a66cf9008781
obslog: also display patch for rebased changesets
This applies the same logic that is used for "merge-diff" to rebased
changesets. The successors' content is compared to the content of the
predecessors rebased in-memory on the new parents.
This highlights the changes that were actually introduced while rebasing (like
conflict resolution or API adjustment).
As a side effect, obslog now also outputs slightly more diffs for splits,
showing what parts of the original big changeset were moved to the smaller
split components (but for now it only works for the first few changesets).
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 22 Sep 2024 02:58:54 +0200 |
parents | 2800aa3c3dbf |
children |
rev | line source |
---|---|
5918
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
1 This test amends a merge commit using various commands, including topics |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
2 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
3 $ . $TESTDIR/testlib/common.sh |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
4 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
5 $ cat >> $HGRCPATH << EOF |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
6 > [extensions] |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
7 > evolve = |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
8 > topic = |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
9 > EOF |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
10 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
11 $ hg init amending-a-merge |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
12 $ cd amending-a-merge |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
13 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
14 $ mkcommit root |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
15 $ mkcommit apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
16 $ hg up 'desc("root")' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
17 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
18 $ mkcommit banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
19 created new head |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
20 (consider using topic for lightweight branches. See 'hg help topic') |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
21 $ hg up 'desc("apple")' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
22 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
23 $ hg merge 'desc("banana")' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
24 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
25 (branch merge, don't forget to commit) |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
26 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
27 $ hg ci -m merge |
6031
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
28 $ hg log -r . -T '{rev}: {join(extras, " ")}\n' |
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
29 3: branch=default |
5918
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
30 $ hg diff -r 'p1(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
31 diff -r 88a060ab6523 -r c20705a6a8c4 banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
32 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
33 +++ b/banana Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
34 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
35 +banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
36 $ hg diff -r 'p2(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
37 diff -r d8c7baf0ca58 -r c20705a6a8c4 apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
38 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
39 +++ b/apple Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
40 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
41 +apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
42 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
43 amend |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
44 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
45 $ hg amend -m 'merge, amend' |
6031
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
46 $ hg log -r . -T '{rev}: {join(extras, " ")}\n' |
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
47 4: amend_source=[0-9a-f]+ branch=default (re) |
5918
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
48 $ hg diff -r 'p1(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
49 diff -r 88a060ab6523 -r 456753fae3cd banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
50 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
51 +++ b/banana Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
52 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
53 +banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
54 $ hg diff -r 'p2(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
55 diff -r d8c7baf0ca58 -r 456753fae3cd apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
56 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
57 +++ b/apple Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
58 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
59 +apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
60 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
61 metaedit |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
62 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
63 $ hg metaedit -m 'merge, metaedit' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
64 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
6031
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
65 $ hg log -r . -T '{rev}: {join(extras, " ")}\n' |
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
66 5: amend_source=[0-9a-f]+ branch=default (re) |
5918
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
67 $ hg diff -r 'p1(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
68 diff -r 88a060ab6523 -r 1528d42f3e83 banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
69 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
70 +++ b/banana Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
71 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
72 +banana |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
73 $ hg diff -r 'p2(.)' -r '.' |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
74 diff -r d8c7baf0ca58 -r 1528d42f3e83 apple |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
75 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
76 +++ b/apple Thu Jan 01 00:00:00 1970 +0000 |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
77 @@ -0,0 +1,1 @@ |
13c406d9912c
tests: add test-amend-merge.t with a simple merge amended by various commands
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
78 +apple |
5919
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
79 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
80 topics |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
81 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
82 $ hg topics -r . foo |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
83 switching to topic foo |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
84 changed topic on 1 changesets to "foo" |
6031
c3d66af4cb07
tests: show extras that are going to change in the next patch
Anton Shestakov <av6@dwimlabs.net>
parents:
5919
diff
changeset
|
85 $ hg log -r . -T '{rev}: {join(extras, " ")}\n' |
6032
2800aa3c3dbf
topic: drop the old workaround for detecting amends by amend_source
Anton Shestakov <av6@dwimlabs.net>
parents:
6031
diff
changeset
|
86 6: _rewrite_noise=[0-9a-f]+ amend_source=[0-9a-f]+ branch=default topic=foo (re) |
5919
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
87 $ hg diff -r 'p1(.)' -r '.' |
6032
2800aa3c3dbf
topic: drop the old workaround for detecting amends by amend_source
Anton Shestakov <av6@dwimlabs.net>
parents:
6031
diff
changeset
|
88 diff -r 88a060ab6523 -r 05be679ae1bd banana |
5919
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
89 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
90 +++ b/banana Thu Jan 01 00:00:00 1970 +0000 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
91 @@ -0,0 +1,1 @@ |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
92 +banana |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
93 $ hg diff -r 'p2(.)' -r '.' |
6032
2800aa3c3dbf
topic: drop the old workaround for detecting amends by amend_source
Anton Shestakov <av6@dwimlabs.net>
parents:
6031
diff
changeset
|
94 diff -r d8c7baf0ca58 -r 05be679ae1bd apple |
5919
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
95 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
96 +++ b/apple Thu Jan 01 00:00:00 1970 +0000 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
97 @@ -0,0 +1,1 @@ |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
98 +apple |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
99 |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
100 $ hg files |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
101 apple |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
102 banana |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
103 root |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
104 $ hg cat apple banana |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
105 apple |
1a8e86053adb
topic: don't lose any file changes when changing topic of a merge commit
Anton Shestakov <av6@dwimlabs.net>
parents:
5918
diff
changeset
|
106 banana |