2019-12-10 02:24:31 +03:00
|
|
|
#chg-compatible
|
|
|
|
|
2020-01-20 13:42:49 +03:00
|
|
|
$ disable treemanifest
|
2020-01-20 13:42:49 +03:00
|
|
|
TODO: configure mutation
|
|
|
|
$ configure noevolution
|
|
|
|
$ enable rebase
|
|
|
|
$ setconfig phases.publish=false
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
|
|
Create a repo with several bookmarks
|
|
|
|
$ hg init a
|
|
|
|
$ cd a
|
|
|
|
|
|
|
|
$ echo a > a
|
|
|
|
$ hg ci -Am A
|
|
|
|
adding a
|
|
|
|
|
|
|
|
$ echo b > b
|
|
|
|
$ hg ci -Am B
|
|
|
|
adding b
|
|
|
|
$ hg book 'X'
|
|
|
|
$ hg book 'Y'
|
2012-08-08 20:10:30 +04:00
|
|
|
|
2011-07-15 22:07:19 +04:00
|
|
|
$ echo c > c
|
|
|
|
$ hg ci -Am C
|
|
|
|
adding c
|
|
|
|
$ hg book 'Z'
|
|
|
|
|
|
|
|
$ hg up -q 0
|
|
|
|
|
|
|
|
$ echo d > d
|
|
|
|
$ hg ci -Am D
|
|
|
|
adding d
|
|
|
|
|
2012-06-22 22:40:31 +04:00
|
|
|
$ hg book W
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
@ 3: 41acb9dca9eb 'D' W
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
| o 2: 49cb3485fa0c 'C' Y Z
|
2011-07-15 22:07:19 +04:00
|
|
|
| |
|
2018-08-16 20:37:29 +03:00
|
|
|
| o 1: 6c81ed0049f8 'B' X
|
2011-07-15 22:07:19 +04:00
|
|
|
|/
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A'
|
2011-07-15 22:07:19 +04:00
|
|
|
|
2012-08-08 20:10:30 +04:00
|
|
|
|
2011-07-15 22:07:19 +04:00
|
|
|
Move only rebased bookmarks
|
|
|
|
|
|
|
|
$ cd ..
|
|
|
|
$ hg clone -q a a1
|
|
|
|
|
|
|
|
$ cd a1
|
|
|
|
$ hg up -q Z
|
|
|
|
|
2013-01-31 04:08:32 +04:00
|
|
|
Test deleting divergent bookmarks from dest (issue3685)
|
|
|
|
|
|
|
|
$ hg book -r 3 Z@diverge
|
|
|
|
|
|
|
|
... and also test that bookmarks not on dest or not being moved aren't deleted
|
|
|
|
|
|
|
|
$ hg book -r 3 X@diverge
|
|
|
|
$ hg book -r 0 Y@diverge
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
o 3: 41acb9dca9eb 'D' W X@diverge Z@diverge
|
2013-01-31 04:08:32 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
| @ 2: 49cb3485fa0c 'C' Y Z
|
2013-01-31 04:08:32 +04:00
|
|
|
| |
|
2018-08-16 20:37:29 +03:00
|
|
|
| o 1: 6c81ed0049f8 'B' X
|
2013-01-31 04:08:32 +04:00
|
|
|
|/
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A' Y@diverge
|
2013-01-31 04:08:32 +04:00
|
|
|
|
2012-06-20 22:08:57 +04:00
|
|
|
$ hg rebase -s Y -d 3
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 49cb3485fa0c "C" (Y Z)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a1/.hg/strip-backup/49cb3485fa0c-126f3e97-rebase.hg
|
2011-07-15 22:07:19 +04:00
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
@ 3: 17fb3faba63c 'C' Y Z
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 2: 41acb9dca9eb 'D' W X@diverge
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
| o 1: 6c81ed0049f8 'B' X
|
2011-07-15 22:07:19 +04:00
|
|
|
|/
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A' Y@diverge
|
2011-07-15 22:07:19 +04:00
|
|
|
|
2014-02-15 11:19:19 +04:00
|
|
|
Do not try to keep active but deleted divergent bookmark
|
|
|
|
|
|
|
|
$ cd ..
|
|
|
|
$ hg clone -q a a4
|
|
|
|
|
|
|
|
$ cd a4
|
|
|
|
$ hg up -q 2
|
|
|
|
$ hg book W@diverge
|
|
|
|
|
|
|
|
$ hg rebase -s W -d .
|
2019-12-18 00:45:17 +03:00
|
|
|
rebasing 41acb9dca9eb "D" (W)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a4/.hg/strip-backup/41acb9dca9eb-b35a6a63-rebase.hg
|
2014-02-15 11:19:19 +04:00
|
|
|
|
|
|
|
$ hg bookmarks
|
|
|
|
W 3:0d3554f74897
|
|
|
|
X 1:6c81ed0049f8
|
|
|
|
Y 2:49cb3485fa0c
|
|
|
|
Z 2:49cb3485fa0c
|
|
|
|
|
2011-07-15 22:07:19 +04:00
|
|
|
Keep bookmarks to the correct rebased changeset
|
|
|
|
|
|
|
|
$ cd ..
|
|
|
|
$ hg clone -q a a2
|
|
|
|
|
|
|
|
$ cd a2
|
|
|
|
$ hg up -q Z
|
|
|
|
|
|
|
|
$ hg rebase -s 1 -d 3
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 6c81ed0049f8 "B" (X)
|
|
|
|
rebasing 49cb3485fa0c "C" (Y Z)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a2/.hg/strip-backup/6c81ed0049f8-a687065f-rebase.hg
|
2011-07-15 22:07:19 +04:00
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
@ 3: 3d5fa227f4b5 'C' Y Z
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 2: e926fccfa8ec 'B' X
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 1: 41acb9dca9eb 'D' W
|
2012-06-22 22:40:31 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A'
|
2012-06-22 22:40:31 +04:00
|
|
|
|
|
|
|
|
|
|
|
Keep active bookmark on the correct changeset
|
|
|
|
|
|
|
|
$ cd ..
|
|
|
|
$ hg clone -q a a3
|
|
|
|
|
|
|
|
$ cd a3
|
|
|
|
$ hg up -q X
|
|
|
|
|
|
|
|
$ hg rebase -d W
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 6c81ed0049f8 "B" (X)
|
|
|
|
rebasing 49cb3485fa0c "C" (Y Z)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a3/.hg/strip-backup/6c81ed0049f8-a687065f-rebase.hg
|
2012-06-22 22:40:31 +04:00
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
o 3: 3d5fa227f4b5 'C' Y Z
|
2012-06-22 22:40:31 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
@ 2: e926fccfa8ec 'B' X
|
2012-06-22 22:40:31 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 1: 41acb9dca9eb 'D' W
|
2011-07-15 22:07:19 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A'
|
2011-07-15 22:07:19 +04:00
|
|
|
|
2013-10-14 19:12:59 +04:00
|
|
|
$ hg bookmarks
|
|
|
|
W 1:41acb9dca9eb
|
|
|
|
* X 2:e926fccfa8ec
|
|
|
|
Y 3:3d5fa227f4b5
|
|
|
|
Z 3:3d5fa227f4b5
|
|
|
|
|
2013-02-04 02:26:39 +04:00
|
|
|
rebase --continue with bookmarks present (issue3802)
|
|
|
|
|
|
|
|
$ hg up 2
|
2013-10-14 18:12:29 +04:00
|
|
|
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
2014-05-14 23:49:55 +04:00
|
|
|
(leaving bookmark X)
|
2013-02-04 02:26:39 +04:00
|
|
|
$ echo 'C' > c
|
|
|
|
$ hg add c
|
|
|
|
$ hg ci -m 'other C'
|
|
|
|
$ hg up 3
|
|
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
2016-02-08 16:03:45 +03:00
|
|
|
$ hg rebase --dest 4
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 3d5fa227f4b5 "C" (Y Z)
|
2013-02-04 02:26:39 +04:00
|
|
|
merging c
|
2018-10-22 22:45:46 +03:00
|
|
|
warning: 1 conflicts while merging c! (edit, then use 'hg resolve --mark')
|
2013-02-09 02:27:59 +04:00
|
|
|
unresolved conflicts (see hg resolve, then hg rebase --continue)
|
2013-02-09 02:17:46 +04:00
|
|
|
[1]
|
2013-02-04 02:26:39 +04:00
|
|
|
$ echo 'c' > c
|
|
|
|
$ hg resolve --mark c
|
2014-07-26 05:32:49 +04:00
|
|
|
(no more unresolved files)
|
2015-12-24 23:41:40 +03:00
|
|
|
continue: hg rebase --continue
|
2013-02-04 02:26:39 +04:00
|
|
|
$ hg rebase --continue
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 3d5fa227f4b5 "C" (Y Z)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a3/.hg/strip-backup/3d5fa227f4b5-c6ea2371-rebase.hg
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
|
|
|
@ 4: 45c0f0ec1203 'C' Y Z
|
2013-02-04 02:26:39 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 3: b0e10b7175fd 'other C'
|
2013-02-04 02:26:39 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 2: e926fccfa8ec 'B' X
|
2013-02-04 02:26:39 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 1: 41acb9dca9eb 'D' W
|
2013-02-04 02:26:39 +04:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
o 0: 1994f17a630e 'A'
|
2013-02-04 02:26:39 +04:00
|
|
|
|
2012-06-11 03:40:51 +04:00
|
|
|
|
2013-09-03 23:12:35 +04:00
|
|
|
ensure that bookmarks given the names of revset functions can be used
|
|
|
|
as --rev arguments (issue3950)
|
|
|
|
|
|
|
|
$ hg update -q 3
|
|
|
|
$ echo bimble > bimble
|
|
|
|
$ hg add bimble
|
|
|
|
$ hg commit -q -m 'bisect'
|
|
|
|
$ echo e >> bimble
|
|
|
|
$ hg ci -m bisect2
|
|
|
|
$ echo e >> bimble
|
|
|
|
$ hg ci -m bisect3
|
|
|
|
$ hg book bisect
|
|
|
|
$ hg update -q Y
|
|
|
|
$ hg rebase -r '"bisect"^^::"bisect"^' -r bisect -d Z
|
2019-10-16 02:28:01 +03:00
|
|
|
rebasing 345c90f326a4 "bisect"
|
|
|
|
rebasing f677a2907404 "bisect2"
|
2019-12-18 00:45:17 +03:00
|
|
|
rebasing 325c16001345 "bisect3" (bisect)
|
2017-12-11 06:50:57 +03:00
|
|
|
saved backup bundle to $TESTTMP/a3/.hg/strip-backup/345c90f326a4-b4840586-rebase.hg
|
2017-09-18 20:54:00 +03:00
|
|
|
|
|
|
|
Bookmark and working parent get moved even if --keep is set (issue5682)
|
|
|
|
|
|
|
|
$ hg init $TESTTMP/book-keep
|
|
|
|
$ cd $TESTTMP/book-keep
|
2019-12-17 05:10:38 +03:00
|
|
|
$ drawdag <<'EOS'
|
2017-09-18 20:54:00 +03:00
|
|
|
> B C
|
|
|
|
> |/
|
|
|
|
> A
|
|
|
|
> EOS
|
2019-12-17 05:10:38 +03:00
|
|
|
$ hg up -q $B
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
2019-12-17 05:10:38 +03:00
|
|
|
o 2: dc0947a82db8 'C'
|
2017-09-18 20:54:00 +03:00
|
|
|
|
|
2019-12-17 05:10:38 +03:00
|
|
|
| @ 1: 112478962961 'B'
|
2017-09-18 20:54:00 +03:00
|
|
|
|/
|
2019-12-17 05:10:38 +03:00
|
|
|
o 0: 426bada5c675 'A'
|
2017-09-18 20:54:00 +03:00
|
|
|
|
2019-12-17 05:10:38 +03:00
|
|
|
$ hg rebase -r $B -d $C --keep
|
|
|
|
rebasing 112478962961 "B"
|
2018-08-16 20:37:29 +03:00
|
|
|
$ tglog
|
2019-12-17 05:10:38 +03:00
|
|
|
@ 3: 9769fc65c4c5 'B'
|
2017-09-18 20:54:00 +03:00
|
|
|
|
|
2019-12-17 05:10:38 +03:00
|
|
|
o 2: dc0947a82db8 'C'
|
2017-09-18 20:54:00 +03:00
|
|
|
|
|
2018-08-16 20:37:29 +03:00
|
|
|
| o 1: 112478962961 'B'
|
2017-09-18 20:54:00 +03:00
|
|
|
|/
|
2019-12-17 05:10:38 +03:00
|
|
|
o 0: 426bada5c675 'A'
|
2017-09-18 20:54:00 +03:00
|
|
|
|
|
|
|
|