From patchwork Tue Aug 13 20:49:09 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: D6724: unshelve: forget unknown files after a partial unshelve From: phabricator X-Patchwork-Id: 41255 Message-Id: <6766631ede87465f5cb02828f31b231f@localhost.localdomain> To: Phabricator Cc: mercurial-devel@mercurial-scm.org Date: Tue, 13 Aug 2019 20:49:09 +0000 Closed by commit rHGd684449eef67: unshelve: forget unknown files after a partial unshelve (authored by navaneeth.suresh). This revision was automatically updated to reflect the committed changes. REPOSITORY rHG Mercurial CHANGES SINCE LAST UPDATE https://phab.mercurial-scm.org/D6724?vs=16179&id=16180 CHANGES SINCE LAST ACTION https://phab.mercurial-scm.org/D6724/new/ REVISION DETAIL https://phab.mercurial-scm.org/D6724 AFFECTED FILES mercurial/shelve.py tests/test-shelve.t CHANGE DETAILS To: navaneeth.suresh, #hg-reviewers, pulkit Cc: pulkit, mercurial-devel diff --git a/tests/test-shelve.t b/tests/test-shelve.t --- a/tests/test-shelve.t +++ b/tests/test-shelve.t @@ -1272,15 +1272,21 @@ > B > C > EOF - $ hg shelve + $ echo > garbage + $ hg st + M foo + ? garbage + $ hg shelve --unknown shelved as default - 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + 1 files updated, 0 files merged, 1 files removed, 0 files unresolved $ cat foo B $ hg unshelve -i < y > y > n + > y + > y > EOF unshelving change 'default' rebasing shelved changes @@ -1292,15 +1298,28 @@ @@ -1,1 +1,2 @@ +A B - record change 1/2 to 'foo'? + record change 1/3 to 'foo'? (enter ? for help) [Ynesfdaq?] y @@ -1,1 +2,2 @@ B +C - record change 2/2 to 'foo'? + record change 2/3 to 'foo'? (enter ? for help) [Ynesfdaq?] n + diff --git a/garbage b/garbage + new file mode 100644 + examine changes to 'garbage'? + (enter ? for help) [Ynesfdaq?] y + + @@ -0,0 +1,1 @@ + + + record change 3/3 to 'garbage'? + (enter ? for help) [Ynesfdaq?] y + + $ hg st + M foo + ? garbage $ cat foo A B diff --git a/mercurial/shelve.py b/mercurial/shelve.py --- a/mercurial/shelve.py +++ b/mercurial/shelve.py @@ -1005,8 +1005,8 @@ restorebranch(ui, repo, branchtorestore) shelvedstate.clear(repo) _finishunshelve(repo, oldtiprev, tr, activebookmark) + _forgetunknownfiles(repo, shelvectx, addedbefore) if not ispartialunshelve: - _forgetunknownfiles(repo, shelvectx, addedbefore) unshelvecleanup(ui, repo, basename, opts) finally: if tr: