mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 01:07:15 +03:00
0562c1220f
Summary: This makes tests depend less on revision numbers. Reviewed By: DurhamG Differential Revision: D22468669 fbshipit-source-id: 74a06930faa3e6ee9d246ecc718c2a3740f57a54
163 lines
4.4 KiB
Perl
163 lines
4.4 KiB
Perl
#chg-compatible
|
|
|
|
$ . "$TESTDIR/histedit-helpers.sh"
|
|
|
|
$ enable histedit
|
|
|
|
$ initrepo ()
|
|
> {
|
|
> hg init r
|
|
> cd r
|
|
> for x in a b c d e f ; do
|
|
> echo $x > $x
|
|
> hg add $x
|
|
> hg ci -m $x
|
|
> done
|
|
> echo a >> e
|
|
> hg ci -m 'does not commute with e'
|
|
> cd ..
|
|
> }
|
|
|
|
$ initrepo
|
|
$ cd r
|
|
|
|
log before edit
|
|
$ hg log --graph
|
|
@ commit: bfa474341cc9
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: does not commute with e
|
|
|
|
|
o commit: 652413bf663e
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: f
|
|
|
|
|
o commit: e860deea161a
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: e
|
|
|
|
|
o commit: 055a42cdd887
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: d
|
|
|
|
|
o commit: 177f92b77385
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: c
|
|
|
|
|
o commit: d2ae7f538514
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: b
|
|
|
|
|
o commit: cb9a9f314b8b
|
|
user: test
|
|
date: Thu Jan 01 00:00:00 1970 +0000
|
|
summary: a
|
|
|
|
|
|
edit the history
|
|
$ hg histedit 177f92b77385 --commands - 2>&1 <<EOF | fixbundle
|
|
> pick 177f92b77385 c
|
|
> pick 055a42cdd887 d
|
|
> pick bfa474341cc9 does not commute with e
|
|
> pick e860deea161a e
|
|
> pick 652413bf663e f
|
|
> EOF
|
|
merging e
|
|
warning: 1 conflicts while merging e! (edit, then use 'hg resolve --mark')
|
|
Fix up the change (pick e860deea161a)
|
|
(hg histedit --continue to resume)
|
|
|
|
insert unsupported advisory merge record
|
|
$ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -x
|
|
$ hg debugmergestate
|
|
* version 2 records
|
|
local: 8f7551c7e4a2f2efe0bc8c741baf7f227d65d758
|
|
other: e860deea161a2f77de56603b340ebbb4536308ae
|
|
labels:
|
|
local: local
|
|
other: histedit
|
|
unrecognized entry: x advisory record
|
|
file extras: e (ancestorlinknode = 0000000000000000000000000000000000000000)
|
|
file: e (record type "F", state "u", hash 58e6b3a414a1e090dfc6029add0f3555ccba127f)
|
|
local path: e (flags "")
|
|
ancestor path: e (node null)
|
|
other path: e (node 6b67ccefd5ce6de77e7ead4f5292843a0255329f)
|
|
$ hg resolve -l
|
|
U e
|
|
|
|
insert unsupported mandatory merge record
|
|
$ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -X
|
|
$ hg debugmergestate
|
|
* version 2 records
|
|
local: 8f7551c7e4a2f2efe0bc8c741baf7f227d65d758
|
|
other: e860deea161a2f77de56603b340ebbb4536308ae
|
|
labels:
|
|
local: local
|
|
other: histedit
|
|
file extras: e (ancestorlinknode = 0000000000000000000000000000000000000000)
|
|
file: e (record type "F", state "u", hash 58e6b3a414a1e090dfc6029add0f3555ccba127f)
|
|
local path: e (flags "")
|
|
ancestor path: e (node null)
|
|
other path: e (node 6b67ccefd5ce6de77e7ead4f5292843a0255329f)
|
|
unrecognized entry: X mandatory record
|
|
$ hg resolve -l
|
|
abort: unsupported merge state records: X
|
|
(see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
|
|
[255]
|
|
$ hg resolve -ma
|
|
abort: unsupported merge state records: X
|
|
(see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
|
|
[255]
|
|
|
|
abort the edit (should clear out merge state)
|
|
$ hg histedit --abort 2>&1 | fixbundle
|
|
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
$ hg debugmergestate
|
|
no merge state found
|
|
|
|
log after abort
|
|
$ hg resolve -l
|
|
$ hg log --graph
|
|
@ commit: bfa474341cc9
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: does not commute with e
|
|
|
|
|
o commit: 652413bf663e
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: f
|
|
|
|
|
o commit: e860deea161a
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: e
|
|
|
|
|
o commit: 055a42cdd887
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: d
|
|
|
|
|
o commit: 177f92b77385
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: c
|
|
|
|
|
o commit: d2ae7f538514
|
|
| user: test
|
|
| date: Thu Jan 01 00:00:00 1970 +0000
|
|
| summary: b
|
|
|
|
|
o commit: cb9a9f314b8b
|
|
user: test
|
|
date: Thu Jan 01 00:00:00 1970 +0000
|
|
summary: a
|
|
|
|
|
|
$ cd ..
|