Mercurial > hg
changeset 21852:37a5decc6924
shelve: accept '--edit' like other commands creating new changeset
After this patch, users can invoke editor for the commit message by
'--edit' option regardless of '--message'.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Fri, 20 Jun 2014 16:15:38 +0900 |
parents | aad28ff87788 |
children | 8127b9e798b1 |
files | hgext/shelve.py tests/test-shelve.t |
diffstat | 2 files changed, 19 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/shelve.py Fri Jun 20 16:15:38 2014 +0900 +++ b/hgext/shelve.py Fri Jun 20 16:15:38 2014 +0900 @@ -178,7 +178,8 @@ if hasmq: saved, repo.mq.checkapplied = repo.mq.checkapplied, False try: - return repo.commit(message, user, opts.get('date'), match) + return repo.commit(message, user, opts.get('date'), match, + editor=cmdutil.getcommiteditor(**opts)) finally: if hasmq: repo.mq.checkapplied = saved @@ -635,6 +636,8 @@ _('shelve with the specified commit date'), _('DATE')), ('d', 'delete', None, _('delete the named shelved change(s)')), + ('e', 'edit', False, + _('invoke editor on commit messages')), ('l', 'list', None, _('list current shelves')), ('m', 'message', '', @@ -680,6 +683,7 @@ ('cleanup', 'cleanup'), # ('date', 'create'), # ignored for passing '--date "0 0"' in tests ('delete', 'delete'), + ('edit', 'create'), ('list', 'list'), ('message', 'create'), ('name', 'create'),
--- a/tests/test-shelve.t Fri Jun 20 16:15:38 2014 +0900 +++ b/tests/test-shelve.t Fri Jun 20 16:15:38 2014 +0900 @@ -16,8 +16,10 @@ $ hg addremove -q shelving in an empty repo should be possible +(this tests also that editor is not invoked, if '--edit' is not +specified) - $ hg shelve + $ HGEDITOR=cat hg shelve shelved as default 0 files updated, 0 files merged, 5 files removed, 0 files unresolved @@ -132,6 +134,7 @@ [255] named shelves, specific filenames, and "commit messages" should all work +(this tests also that editor is invoked, if '--edit' is specified) $ hg status -C M a/a @@ -140,7 +143,16 @@ A c.copy c R b/b - $ hg shelve -q -n wibble -m wat a + $ HGEDITOR=cat hg shelve -q -n wibble -m wat -e a + wat + + + HG: Enter commit message. Lines beginning with 'HG:' are removed. + HG: Leave message empty to abort commit. + HG: -- + HG: user: shelve@localhost + HG: branch 'default' + HG: changed a/a expect "a" to no longer be present, but status otherwise unchanged