Shelve extension does not work with crew

TK Soh teekaysoh at gmail.com
Mon Nov 24 04:05:18 CST 2008


On Mon, Nov 24, 2008 at 4:57 AM, Bastian Doetsch <bastian.doetsch at gmx.de> wrote:
> Am Montag, den 24.11.2008, 00:21 +0000 schrieb TK Soh:
>
>> Feature request:
>> ===========
>>
>> Moreover, I'd like to have a non-interactive option that would accept
>> filenames for which to store diffs - basically like hg export. This way we
>> could use the extension easier from MercurialEclipse. Currently, we have
>> implemented our own native shelve, but this wouldn't be necessary if the
>
> You mean you created your own version of shelve extension?
>
> We have a non-interactive Java version that is currently not compatible with
> hg shelve. It basically stores away the diffs in a .hg subdirectory and can
> reimport them. If the feature request below is implemented, there's actually
> no difference but the used directory - which should be easy for us to
> change. If shelve is working again and supports non-interactive use, we'll
> switch to your extension as that means less code duplication / maintenance.
>
>
>> non-interactive behaviour would be introduced. A call could look like
>> this:
>
> The interactive behavior is largely inherited from the Record
> extension (at least in the early time when I started working on the
> shelve extension), but I am sure we can do something about it.
>
>> hg shelve -q --target <shelf-name> <file1> <file2> <file3>
>>
>> This would produce a diff-file with the name given with --target, much
>> like
>> hg diff behaves. The changes could then be unshelved by issuing:
>>
>> hg unshelve -q --source <shelf-name>
>
> I feel it'd be simpler if we can use a common option name for --target
> and --source.
>
> How about this:
>
> hg shelve -q <shelfname> file1 file2 file3 and
> hg unshelve -q <shelf-name>

shelf-name should be supplied via an option, to make it optional.
That'd also avoid getting mix up with the files in shelve command.

>> which would do something like:
>>
>> hg import .hg/shelve-backup/<shelf-name>
>
> Actually the diffs are save to .hg/shelve file. The .hg/shelve-backup/
> directory is for storing the backup file during the shelve/unshelve
> operations.
>
> Thanks for looking into this!
> Bastian


More information about the Mercurial-devel mailing list