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)