2014-10-24 05:56:24 +04:00
|
|
|
$ extpath=$(dirname $TESTDIR)
|
|
|
|
$ cp $extpath/reset.py $TESTTMP # use $TESTTMP substitution in message
|
|
|
|
$ cat >> $HGRCPATH << EOF
|
|
|
|
> [extensions]
|
|
|
|
> reset=$TESTTMP/reset.py
|
|
|
|
> EOF
|
|
|
|
|
|
|
|
$ hg init repo
|
|
|
|
$ cd repo
|
|
|
|
|
|
|
|
$ echo x > x
|
|
|
|
$ hg commit -qAm x
|
|
|
|
$ hg book foo
|
|
|
|
|
|
|
|
Soft reset should leave pending changes
|
|
|
|
|
|
|
|
$ echo y >> x
|
|
|
|
$ hg commit -qAm y
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ 66ee28d0328c foo
|
|
|
|
|
|
|
|
|
o b292c1e3311f
|
|
|
|
|
|
|
|
$ hg reset .^
|
hgext: fix many tests, run-tests, writecg2 for hg3.3
Summary: Still need to fix pushrebase
Test Plan: ##run-tests.py##
Reviewers: sid0, daviser, davidsp, mitrandir, akushner, rmcelroy, pyd, mpm, durham
Reviewed By: durham
Differential Revision: https://phabricator.fb.com/D1813630
Signature: t1:1813630:1422573745:c5ea2a8acdfda0e555d1ae56a16f4fb5e5618174
2015-01-30 02:06:06 +03:00
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob)
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ b292c1e3311f foo
|
|
|
|
|
|
|
|
$ hg diff
|
|
|
|
diff -r b292c1e3311f x
|
|
|
|
--- a/x Thu Jan 01 00:00:00 1970 +0000
|
|
|
|
+++ b/x * (glob)
|
|
|
|
@@ -1,1 +1,2 @@
|
|
|
|
x
|
|
|
|
+y
|
|
|
|
|
|
|
|
Clean reset should overwrite all changes
|
|
|
|
|
|
|
|
$ hg commit -qAm y
|
|
|
|
$ hg reset --clean .^
|
hgext: fix many tests, run-tests, writecg2 for hg3.3
Summary: Still need to fix pushrebase
Test Plan: ##run-tests.py##
Reviewers: sid0, daviser, davidsp, mitrandir, akushner, rmcelroy, pyd, mpm, durham
Reviewed By: durham
Differential Revision: https://phabricator.fb.com/D1813630
Signature: t1:1813630:1422573745:c5ea2a8acdfda0e555d1ae56a16f4fb5e5618174
2015-01-30 02:06:06 +03:00
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob)
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg diff
|
|
|
|
|
2014-11-21 00:54:13 +03:00
|
|
|
Reset should recover from backup bundles (with correct phase)
|
2014-10-24 05:56:24 +04:00
|
|
|
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ b292c1e3311f foo
|
|
|
|
|
2014-11-21 00:54:13 +03:00
|
|
|
$ hg phase -p b292c1e3311f
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg reset --clean 66ee28d0328c
|
|
|
|
searching for changes
|
|
|
|
adding changesets
|
|
|
|
adding manifests
|
|
|
|
adding file changes
|
|
|
|
added 1 changesets with 1 changes to 1 files
|
2014-11-21 00:54:13 +03:00
|
|
|
$ hg log -G -T '{node|short} {bookmarks} {phase}\n'
|
|
|
|
@ 66ee28d0328c foo draft
|
2014-10-24 05:56:24 +04:00
|
|
|
|
|
2014-11-21 00:54:13 +03:00
|
|
|
o b292c1e3311f public
|
2014-10-24 05:56:24 +04:00
|
|
|
|
2014-11-21 00:54:13 +03:00
|
|
|
$ hg phase -f -d b292c1e3311f
|
2014-10-24 05:56:24 +04:00
|
|
|
|
|
|
|
Reset should not strip reachable commits
|
|
|
|
|
|
|
|
$ hg book bar
|
|
|
|
$ hg reset --clean .^
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
o 66ee28d0328c foo
|
|
|
|
|
|
|
|
|
@ b292c1e3311f bar
|
|
|
|
|
|
|
|
|
|
|
|
$ hg book -d bar
|
|
|
|
$ hg up foo
|
|
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
|
|
(activating bookmark foo)
|
|
|
|
|
|
|
|
Reset to '.' by default
|
|
|
|
|
|
|
|
$ echo z >> x
|
2014-10-29 08:44:17 +03:00
|
|
|
$ echo z >> y
|
|
|
|
$ hg add y
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg st
|
|
|
|
M x
|
2014-10-29 08:44:17 +03:00
|
|
|
A y
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg reset
|
|
|
|
$ hg st
|
|
|
|
M x
|
2014-10-29 08:44:17 +03:00
|
|
|
? y
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg reset -C
|
|
|
|
$ hg st
|
2014-10-29 08:44:17 +03:00
|
|
|
? y
|
|
|
|
$ rm y
|
2014-10-24 05:56:24 +04:00
|
|
|
|
|
|
|
Keep old commits
|
|
|
|
|
|
|
|
$ hg reset --keep .^
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
o 66ee28d0328c
|
|
|
|
|
|
|
|
|
@ b292c1e3311f foo
|
|
|
|
|
|
|
|
Reset without a bookmark
|
|
|
|
|
|
|
|
$ hg up tip
|
|
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
|
|
(leaving bookmark foo)
|
|
|
|
$ hg book -d foo
|
|
|
|
$ hg reset .^
|
2015-10-13 05:53:04 +03:00
|
|
|
resetting without an active bookmark
|
hgext: fix many tests, run-tests, writecg2 for hg3.3
Summary: Still need to fix pushrebase
Test Plan: ##run-tests.py##
Reviewers: sid0, daviser, davidsp, mitrandir, akushner, rmcelroy, pyd, mpm, durham
Reviewed By: durham
Differential Revision: https://phabricator.fb.com/D1813630
Signature: t1:1813630:1422573745:c5ea2a8acdfda0e555d1ae56a16f4fb5e5618174
2015-01-30 02:06:06 +03:00
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob)
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg book foo
|
|
|
|
|
2015-04-24 23:10:58 +03:00
|
|
|
Reset to bookmark with - in the name
|
|
|
|
|
|
|
|
$ hg reset 66ee28d0328c
|
|
|
|
searching for changes
|
|
|
|
adding changesets
|
|
|
|
adding manifests
|
|
|
|
adding file changes
|
|
|
|
added 1 changesets with 1 changes to 1 files
|
|
|
|
$ hg book foo-bar -r .^
|
|
|
|
$ hg reset foo-bar
|
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob)
|
|
|
|
$ hg book -d foo-bar
|
|
|
|
|
2014-10-24 05:56:24 +04:00
|
|
|
Verify file status after reset
|
|
|
|
|
|
|
|
$ hg reset -C 66ee28d0328c
|
|
|
|
searching for changes
|
|
|
|
adding changesets
|
|
|
|
adding manifests
|
|
|
|
adding file changes
|
|
|
|
added 1 changesets with 1 changes to 1 files
|
|
|
|
$ touch toberemoved
|
|
|
|
$ hg commit -qAm 'add file for removal'
|
|
|
|
$ echo z >> x
|
|
|
|
$ touch tobeadded
|
|
|
|
$ hg add tobeadded
|
|
|
|
$ hg rm toberemoved
|
|
|
|
$ hg commit -m 'to be reset'
|
|
|
|
$ hg reset .^
|
hgext: fix many tests, run-tests, writecg2 for hg3.3
Summary: Still need to fix pushrebase
Test Plan: ##run-tests.py##
Reviewers: sid0, daviser, davidsp, mitrandir, akushner, rmcelroy, pyd, mpm, durham
Reviewed By: durham
Differential Revision: https://phabricator.fb.com/D1813630
Signature: t1:1813630:1422573745:c5ea2a8acdfda0e555d1ae56a16f4fb5e5618174
2015-01-30 02:06:06 +03:00
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/d36bf00ac47e-375e6009-backup.hg (glob)
|
2014-10-24 05:56:24 +04:00
|
|
|
$ hg status
|
|
|
|
M x
|
|
|
|
! toberemoved
|
|
|
|
? tobeadded
|
2014-10-27 20:11:48 +03:00
|
|
|
$ hg reset -C 66ee28d0328c
|
hgext: fix many tests, run-tests, writecg2 for hg3.3
Summary: Still need to fix pushrebase
Test Plan: ##run-tests.py##
Reviewers: sid0, daviser, davidsp, mitrandir, akushner, rmcelroy, pyd, mpm, durham
Reviewed By: durham
Differential Revision: https://phabricator.fb.com/D1813630
Signature: t1:1813630:1422573745:c5ea2a8acdfda0e555d1ae56a16f4fb5e5618174
2015-01-30 02:06:06 +03:00
|
|
|
saved backup bundle to $TESTTMP/repo/.hg/strip-backup/34fb347b2aae-c2a02721-backup.hg (glob)
|
2014-10-27 20:11:48 +03:00
|
|
|
|
|
|
|
Reset + Evolve tests
|
|
|
|
|
|
|
|
$ cat >> .hg/hgrc <<EOF
|
|
|
|
> [extensions]
|
|
|
|
> evolve=
|
|
|
|
> rebase=
|
|
|
|
> EOF
|
|
|
|
$ touch a
|
|
|
|
$ hg commit -Aqm a
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ 7f3a02b3e388 foo
|
|
|
|
|
|
|
|
|
o 66ee28d0328c
|
|
|
|
|
|
|
|
|
o b292c1e3311f
|
|
|
|
|
|
|
|
|
|
|
|
Reset prunes commits
|
|
|
|
|
|
|
|
$ hg reset -C 66ee28d0328c^
|
|
|
|
2 changesets pruned
|
|
|
|
$ hg log -r 66ee28d0328c
|
|
|
|
abort: hidden revision '66ee28d0328c'!
|
|
|
|
(use --hidden to access hidden revisions)
|
|
|
|
[255]
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ b292c1e3311f foo
|
|
|
|
|
2015-06-18 00:38:03 +03:00
|
|
|
Reset touches commits to revive, when inhibit is not enabled it creates
|
|
|
|
a new hash for them
|
2014-10-27 20:11:48 +03:00
|
|
|
|
|
|
|
$ hg reset -C 7f3a02b3e388
|
|
|
|
$ hg log -r 7f3a02b3e388
|
|
|
|
abort: hidden revision '7f3a02b3e388'!
|
|
|
|
(use --hidden to access hidden revisions)
|
|
|
|
[255]
|
|
|
|
$ hg log -G -T '{rev} {bookmarks}\n'
|
|
|
|
@ 4 foo
|
|
|
|
|
|
|
|
|
o 3
|
|
|
|
|
|
|
|
|
o 0
|
|
|
|
|
2015-06-18 00:38:03 +03:00
|
|
|
Reset + Inhibit tests, with inhibit reset revives the same commit
|
|
|
|
|
|
|
|
$ cat >> .hg/hgrc <<EOF
|
|
|
|
> [extensions]
|
|
|
|
> evolve =
|
|
|
|
> inhibit =
|
|
|
|
> directaccess =
|
|
|
|
> rebase=
|
|
|
|
> EOF
|
|
|
|
|
|
|
|
$ hg reset -C 7f3a02b3e388
|
|
|
|
Warning: accessing hidden changesets 7f3a02b3e388 for write operation
|
|
|
|
2 changesets pruned
|
|
|
|
$ hg log -G -T '{node|short} {bookmarks}\n'
|
|
|
|
@ 7f3a02b3e388 foo
|
|
|
|
|
|
|
|
|
o 66ee28d0328c
|
|
|
|
|
|
|
|
|
o b292c1e3311f
|
|
|
|
|
2015-06-05 01:27:46 +03:00
|
|
|
Reset to the commit your on is a no-op
|
|
|
|
$ hg status
|
|
|
|
$ hg log -r . -T '{rev}\n'
|
2015-06-18 00:38:03 +03:00
|
|
|
2
|
2015-06-05 01:27:46 +03:00
|
|
|
$ hg reset .
|
|
|
|
$ hg log -r . -T '{rev}\n'
|
2015-06-18 00:38:03 +03:00
|
|
|
2
|
2015-06-05 01:27:46 +03:00
|
|
|
$ hg debugdirstate
|
2015-06-17 23:10:22 +03:00
|
|
|
n 644 0 * a (glob)
|
|
|
|
n 644 0 * tobeadded (glob)
|
|
|
|
n 644 4 * x (glob)
|