2016-10-25 21:10:47 +03:00
|
|
|
Set up test environment.
|
|
|
|
$ cat >> $HGRCPATH << EOF
|
|
|
|
> [extensions]
|
2017-06-14 03:08:20 +03:00
|
|
|
> fbamend=$TESTDIR/../hgext3rd/fbamend
|
2017-05-30 22:56:40 +03:00
|
|
|
> inhibit=$TESTDIR/../hgext3rd/inhibit.py
|
2016-10-25 21:10:47 +03:00
|
|
|
> rebase=
|
|
|
|
> strip=
|
2017-06-19 18:02:38 +03:00
|
|
|
> tweakdefaults=$TESTDIR/../hgext3rd/tweakdefaults.py
|
2016-10-25 21:10:47 +03:00
|
|
|
> [experimental]
|
|
|
|
> evolution = createmarkers
|
|
|
|
> [fbamend]
|
|
|
|
> userestack=true
|
|
|
|
> EOF
|
|
|
|
$ mkcommit() {
|
|
|
|
> echo "$1" > "$1"
|
|
|
|
> hg add "$1"
|
|
|
|
> echo "add $1" > msg
|
|
|
|
> hg ci -l msg
|
|
|
|
> }
|
|
|
|
$ reset() {
|
|
|
|
> cd ..
|
|
|
|
> rm -rf userestack
|
|
|
|
> hg init userestack
|
|
|
|
> cd userestack
|
|
|
|
> }
|
|
|
|
$ showgraph() {
|
2017-03-08 22:30:14 +03:00
|
|
|
> hg log --graph -r '(::.)::' -T "{rev} {desc|firstline}" | sed \$d
|
2016-10-25 21:10:47 +03:00
|
|
|
> }
|
|
|
|
$ hg init userestack && cd userestack
|
|
|
|
|
|
|
|
Test that no preamend bookmark is created.
|
|
|
|
$ mkcommit a
|
|
|
|
$ mkcommit b
|
|
|
|
$ mkcommit c
|
|
|
|
$ mkcommit d
|
|
|
|
$ hg up 1
|
|
|
|
0 files updated, 0 files merged, 2 files removed, 0 files unresolved
|
|
|
|
$ hg amend -m "amended"
|
|
|
|
warning: the changeset's children were left behind
|
2017-06-26 17:31:28 +03:00
|
|
|
(use 'hg restack' to rebase them)
|
2016-10-25 21:10:47 +03:00
|
|
|
$ hg book
|
|
|
|
no bookmarks set
|
|
|
|
|
|
|
|
Test hg amend --fixup.
|
|
|
|
$ showgraph
|
|
|
|
@ 4 amended
|
|
|
|
|
|
|
|
|
| o 3 add d
|
|
|
|
| |
|
|
|
|
| o 2 add c
|
|
|
|
| |
|
2017-07-11 01:45:31 +03:00
|
|
|
| x 1 add b
|
2016-10-25 21:10:47 +03:00
|
|
|
|/
|
|
|
|
o 0 add a
|
2017-03-08 22:30:14 +03:00
|
|
|
|
2016-10-25 21:10:47 +03:00
|
|
|
$ hg amend --fixup
|
2017-03-08 22:30:14 +03:00
|
|
|
rebasing 2:* "add c" (glob)
|
|
|
|
rebasing 3:* "add d" (glob)
|
2016-10-25 21:10:47 +03:00
|
|
|
$ showgraph
|
|
|
|
o 6 add d
|
|
|
|
|
|
|
|
|
o 5 add c
|
|
|
|
|
|
|
|
|
@ 4 amended
|
|
|
|
|
|
|
|
|
o 0 add a
|
2017-03-08 22:30:14 +03:00
|
|
|
|
|
|
|
Test that the operation field on the metadata is correctly set.
|
|
|
|
$ hg debugobsolete
|
2017-11-03 22:40:04 +03:00
|
|
|
[a-f0-9]* [a-f0-9]* 0 .* {'ef1': '33', 'operation': 'amend', 'user': 'test'} (re)
|
|
|
|
[a-f0-9]* [a-f0-9]* 0 .* {'ef1': '4', 'operation': 'rebase', 'user': 'test'} (re)
|
|
|
|
[a-f0-9]* [a-f0-9]* 0 .* {'ef1': '4', 'operation': 'rebase', 'user': 'test'} (re)
|
2016-10-25 21:10:47 +03:00
|
|
|
|
|
|
|
Test hg amend --rebase
|
|
|
|
$ hg amend -m "amended again" --rebase
|
2017-03-08 22:30:14 +03:00
|
|
|
rebasing 5:* "add c" (glob)
|
|
|
|
rebasing 6:* "add d" (glob)
|
2016-10-25 21:10:47 +03:00
|
|
|
$ showgraph
|
|
|
|
o 9 add d
|
|
|
|
|
|
|
|
|
o 8 add c
|
|
|
|
|
|
|
|
|
@ 7 amended again
|
|
|
|
|
|
|
|
|
o 0 add a
|