diff --git a/hgext/keyword.py b/hgext/keyword.py --- a/hgext/keyword.py +++ b/hgext/keyword.py @@ -102,7 +102,8 @@ nokwcommands = ('add addremove annotate # hg commands that trigger expansion only when writing to working dir, # not when reading filelog, and unexpand when reading from working dir -restricted = 'merge kwexpand kwshrink record qrecord resolve transplant' +restricted = ('merge kwexpand kwshrink record qrecord resolve transplant' + ' unshelve') # names of extensions using dorecord recordextensions = 'record' diff --git a/tests/test-keyword.t b/tests/test-keyword.t --- a/tests/test-keyword.t +++ b/tests/test-keyword.t @@ -1137,6 +1137,7 @@ Keywords shrunk in working directory, bu Now disable keyword expansion + $ cp $HGRCPATH $HGRCPATH.backup $ rm "$HGRCPATH" $ cat a b expand $Id$ @@ -1152,4 +1153,50 @@ Now disable keyword expansion ignore $Id$ a +enable keyword expansion again + + $ cat $HGRCPATH.backup >> $HGRCPATH + +Test restricted mode with unshelve + + $ cat <> $HGRCPATH + > [extensions] + > shelve = + > EOF + + $ echo xxxx >> a + $ hg diff + diff -r 800511b3a22d a + --- a/a Thu Jan 01 00:00:00 1970 +0000 + +++ b/a * (glob) + @@ -2,3 +2,4 @@ + do not process $Id: + xxx $ + $Xinfo$ + +xxxx + $ hg shelve -q --name tmp + $ hg shelve --list --patch + tmp (*) changes to 'localresolve' (glob) + + diff --git a/a b/a + --- a/a + +++ b/a + @@ -2,3 +2,4 @@ + do not process $Id: + xxx $ + $Xinfo$ + +xxxx + + $ hg update -q -C 10 + $ hg unshelve -q tmp + $ hg diff + diff -r 4aa30d025d50 a + --- a/a Thu Jan 01 00:00:00 1970 +0000 + +++ b/a * (glob) + @@ -3,3 +3,4 @@ + do not process $Id: + xxx $ + $Xinfo$ + +xxxx + $ cd ..