Mercurial > hg
comparison tests/test-rebase-obsolete.t @ 32354:f432897a9f49
obsmarker: add an experimental flag controlling "operation" recording
It seems better to introduce the experiment behind a flag for now as there are
multiple concerns around the feature:
* Storing operation increase the size of obsolescence markers significantly
(+10-20%).
* It performs poorly when exchanging markers (cannot combine command names,
command name might be unknown remotely, etc)
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sat, 20 May 2017 03:10:23 +0200 |
parents | 3546a771e376 |
children | d6be5b5cc325 |
comparison
equal
deleted
inserted
replaced
32353:4bffe2421f34 | 32354:f432897a9f49 |
---|---|
98 | x 1:42ccdea3bb16 B | 98 | x 1:42ccdea3bb16 B |
99 |/ | 99 |/ |
100 o 0:cd010b8cd998 A | 100 o 0:cd010b8cd998 A |
101 | 101 |
102 $ hg debugobsolete | 102 $ hg debugobsolete |
103 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 e4e5be0395b2cbd471ed22a26b1b6a1a0658a794 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 103 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 e4e5be0395b2cbd471ed22a26b1b6a1a0658a794 0 (*) {'user': 'test'} (glob) |
104 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 2327fea05063f39961b14cb69435a9898dc9a245 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 104 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 2327fea05063f39961b14cb69435a9898dc9a245 0 (*) {'user': 'test'} (glob) |
105 32af7686d403cf45b5d95f2d70cebea587ac806a 8eeb3c33ad33d452c89e5dcf611c347f978fb42b 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 105 32af7686d403cf45b5d95f2d70cebea587ac806a 8eeb3c33ad33d452c89e5dcf611c347f978fb42b 0 (*) {'user': 'test'} (glob) |
106 | 106 |
107 | 107 |
108 $ cd .. | 108 $ cd .. |
109 | 109 |
110 empty changeset | 110 empty changeset |
168 | x 1:42ccdea3bb16 B | 168 | x 1:42ccdea3bb16 B |
169 |/ | 169 |/ |
170 o 0:cd010b8cd998 A | 170 o 0:cd010b8cd998 A |
171 | 171 |
172 $ hg debugobsolete | 172 $ hg debugobsolete |
173 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 173 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'user': 'test'} (glob) |
174 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 174 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'user': 'test'} (glob) |
175 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 175 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'user': 'test'} (glob) |
176 | 176 |
177 | 177 |
178 More complex case where part of the rebase set were already rebased | 178 More complex case where part of the rebase set were already rebased |
179 | 179 |
180 $ hg rebase --rev 'desc(D)' --dest 'desc(H)' | 180 $ hg rebase --rev 'desc(D)' --dest 'desc(H)' |
181 rebasing 9:08483444fef9 "D" | 181 rebasing 9:08483444fef9 "D" |
182 $ hg debugobsolete | 182 $ hg debugobsolete |
183 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 183 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'user': 'test'} (glob) |
184 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 184 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'user': 'test'} (glob) |
185 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 185 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'user': 'test'} (glob) |
186 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 186 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (*) {'user': 'test'} (glob) |
187 $ hg log -G | 187 $ hg log -G |
188 @ 11:4596109a6a43 D | 188 @ 11:4596109a6a43 D |
189 | | 189 | |
190 | o 10:5ae4c968c6ac C | 190 | o 10:5ae4c968c6ac C |
191 | | | 191 | | |
206 $ hg rebase --source 'desc(B)' --dest 'tip' --config experimental.rebaseskipobsolete=True | 206 $ hg rebase --source 'desc(B)' --dest 'tip' --config experimental.rebaseskipobsolete=True |
207 rebasing 8:8877864f1edb "B" | 207 rebasing 8:8877864f1edb "B" |
208 note: not rebasing 9:08483444fef9 "D", already in destination as 11:4596109a6a43 "D" | 208 note: not rebasing 9:08483444fef9 "D", already in destination as 11:4596109a6a43 "D" |
209 rebasing 10:5ae4c968c6ac "C" | 209 rebasing 10:5ae4c968c6ac "C" |
210 $ hg debugobsolete | 210 $ hg debugobsolete |
211 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 211 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (*) {'user': 'test'} (glob) |
212 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 212 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (*) {'user': 'test'} (glob) |
213 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'operation': 'rebase', 'user': 'test'} (glob) | 213 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (*) {'user': 'test'} (glob) |
214 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 214 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (*) {'user': 'test'} (glob) |
215 8877864f1edb05d0e07dc4ba77b67a80a7b86672 462a34d07e599b87ea08676a449373fe4e2e1347 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 215 8877864f1edb05d0e07dc4ba77b67a80a7b86672 462a34d07e599b87ea08676a449373fe4e2e1347 0 (*) {'user': 'test'} (glob) |
216 5ae4c968c6aca831df823664e706c9d4aa34473d 98f6af4ee9539e14da4465128f894c274900b6e5 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 216 5ae4c968c6aca831df823664e706c9d4aa34473d 98f6af4ee9539e14da4465128f894c274900b6e5 0 (*) {'user': 'test'} (glob) |
217 $ hg log --rev 'divergent()' | 217 $ hg log --rev 'divergent()' |
218 $ hg log -G | 218 $ hg log -G |
219 o 13:98f6af4ee953 C | 219 o 13:98f6af4ee953 C |
220 | | 220 | |
221 o 12:462a34d07e59 B | 221 o 12:462a34d07e59 B |
347 o 0:cd010b8cd998 A | 347 o 0:cd010b8cd998 A |
348 | 348 |
349 $ hg id --debug -r tip | 349 $ hg id --debug -r tip |
350 4dc2197e807bae9817f09905b50ab288be2dbbcf tip | 350 4dc2197e807bae9817f09905b50ab288be2dbbcf tip |
351 $ hg debugobsolete | 351 $ hg debugobsolete |
352 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 352 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'user': 'test'} (glob) |
353 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 353 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'user': 'test'} (glob) |
354 32af7686d403cf45b5d95f2d70cebea587ac806a 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 354 32af7686d403cf45b5d95f2d70cebea587ac806a 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (*) {'user': 'test'} (glob) |
355 | 355 |
356 $ cd .. | 356 $ cd .. |
357 | 357 |
358 Rebase set has hidden descendants | 358 Rebase set has hidden descendants |
359 --------------------------------- | 359 --------------------------------- |
409 | x 1:42ccdea3bb16 B | 409 | x 1:42ccdea3bb16 B |
410 |/ | 410 |/ |
411 o 0:cd010b8cd998 A | 411 o 0:cd010b8cd998 A |
412 | 412 |
413 $ hg debugobsolete | 413 $ hg debugobsolete |
414 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b e273c5e7d2d29df783dce9f9eaa3ac4adc69c15d 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 414 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b e273c5e7d2d29df783dce9f9eaa3ac4adc69c15d 0 (*) {'user': 'test'} (glob) |
415 32af7686d403cf45b5d95f2d70cebea587ac806a cf44d2f5a9f4297a62be94cbdd3dff7c7dc54258 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 415 32af7686d403cf45b5d95f2d70cebea587ac806a cf44d2f5a9f4297a62be94cbdd3dff7c7dc54258 0 (*) {'user': 'test'} (glob) |
416 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 7c6027df6a99d93f461868e5433f63bde20b6dfb 0 (*) {'operation': 'rebase', 'user': 'test'} (glob) | 416 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 7c6027df6a99d93f461868e5433f63bde20b6dfb 0 (*) {'user': 'test'} (glob) |
417 | 417 |
418 Test that rewriting leaving instability behind is allowed | 418 Test that rewriting leaving instability behind is allowed |
419 --------------------------------------------------------------------- | 419 --------------------------------------------------------------------- |
420 | 420 |
421 $ hg log -r 'children(8)' | 421 $ hg log -r 'children(8)' |
965 3:be1832deae9a b (no-eol) | 965 3:be1832deae9a b (no-eol) |
966 $ hg book -r 2 mybook --hidden # rev 2 has a bookmark on it now | 966 $ hg book -r 2 mybook --hidden # rev 2 has a bookmark on it now |
967 $ hg up 2 && hg log -r . # working dir is at rev 2 again | 967 $ hg up 2 && hg log -r . # working dir is at rev 2 again |
968 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | 968 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
969 2:1e9a3c00cbe9 b (no-eol) | 969 2:1e9a3c00cbe9 b (no-eol) |
970 $ hg rebase -r 2 -d 3 | 970 $ hg rebase -r 2 -d 3 --config experimental.evolution.track-operation=1 |
971 note: not rebasing 2:1e9a3c00cbe9 "b" (mybook), already in destination as 3:be1832deae9a "b" | 971 note: not rebasing 2:1e9a3c00cbe9 "b" (mybook), already in destination as 3:be1832deae9a "b" |
972 Check that working directory was updated to rev 3 although rev 2 was skipped | 972 Check that working directory was updated to rev 3 although rev 2 was skipped |
973 during the rebase operation | 973 during the rebase operation |
974 $ hg log -r . | 974 $ hg log -r . |
975 3:be1832deae9a b (no-eol) | 975 3:be1832deae9a b (no-eol) |
976 | 976 |
977 Check that bookmark was moved to rev 3 although rev 2 was skipped | 977 Check that bookmark was moved to rev 3 although rev 2 was skipped |
978 during the rebase operation | 978 during the rebase operation |
979 $ hg bookmarks | 979 $ hg bookmarks |
980 mybook 3:be1832deae9a | 980 mybook 3:be1832deae9a |
981 $ hg debugobsolete --rev tip | |
982 1e9a3c00cbe90d236ac05ef61efcc5e40b7412bc be1832deae9ac531caa7438b8dcf6055a122cd8e 0 (*) {'user': 'test'} (glob) |