Differences between revisions 1 and 17 (spanning 16 versions)
Revision 1 as of 2007-12-11 09:32:45
Size: 753
Comment: Initial explanation page for shelve extension.
Revision 17 as of 2010-08-11 20:15:16
Size: 2408
Editor: GregWard
Comment: reference AtticExtension; tiny grammar fix
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Shelve extension = == Shelve Extension ==

'''This extension is not distributed with Mercurial.'''

''Author: TK Soh <teekaysoh@gmail.com>''

Repository: [[http://bitbucket.org/tksoh/hgshelve/]]

=== Overview ===

The shelve extension provides the `shelve` command to lets you choose which parts of the changes in a working directory you'd like to set aside temporarily, at the granularity of patch hunks. You can later restore the shelved patch hunks using the `unshelve` command.

The shelve extension has been adapted from Mercurial's RecordExtension.

=== Compatibility with Mercurial ===

|| '''Mercurial''' || '''Shelve Extension''' ||
|| 1.6 and later || [[http://bitbucket.org/tksoh/hgshelve/changeset/41e13e800fb6/|41e13e800fb6]] or later||
|| 1.5.x and later || [[http://bitbucket.org/tksoh/hgshelve/changeset/d95c583611f8/|d95c583611f8]] or later||
|| 1.4.x and later || [[http://bitbucket.org/tksoh/hgshelve/changeset/276d8083dc3b/|276d8083dc3b]] or later||
|| 1.3.x || [[http://bitbucket.org/tksoh/hgshelve/changeset/18815655993b/|18815655993b]] or later||
|| 1.1.x - 1.2.x || [[http://bitbucket.org/tksoh/hgshelve/changeset/7090a3ed2da7/|7090a3ed2da7]] ||
|| < 1.1.x || [[http://bitbucket.org/tksoh/hgshelve/changeset/ef85a6331d31/|ef85a6331d31]] ||

=== Configuration ===

Configure your .hgrc to enable the extension by adding following lines:
Line 4: Line 30:
interactively select changes to set aside [extensions]
hgshelve=/path/to/hgshelve.py
}}}
Line 6: Line 34:
If a list of files is omitted, all changes reported by "hg status"
will be candidates for shelveing.
or place hgshelve.py in your 'hgext' directory and add the following lines:
Line 9: Line 36:
You will be prompted for whether to shelve changes to each
modified file, and for files with multiple changes, for each
change to use. For each query, the following responses are
possible:
{{{
[extensions]
hgext.hgshelve=
}}}
Line 14: Line 41:
If you use the win32text extension, make sure you have the following lines in your .hgrc or mercurial.ini. This enables automatic line-ending translation when applying patches.

{{{
[patch]
eol = auto
}}}

=== Usage ===

(this is only a description of the basic usage)

{{{
hg shelve
}}}

Temporarily stash away changes. You can select the exact hunks of changes you want to shelve.

{{{
hg unshelve
}}}

Get the changes back into the workdir.


=== Hunk selection ===

{{{
Line 27: Line 81:
[http://www.nabble.com/-ANN--shelve-extension-td12696573.html Initial announcement message.] === See also ===

AtticExtension

----
CategoryExtensionsByOthers

Shelve Extension

This extension is not distributed with Mercurial.

Author: TK Soh <teekaysoh@gmail.com>

Repository: http://bitbucket.org/tksoh/hgshelve/

1. Overview

The shelve extension provides the shelve command to lets you choose which parts of the changes in a working directory you'd like to set aside temporarily, at the granularity of patch hunks. You can later restore the shelved patch hunks using the unshelve command.

The shelve extension has been adapted from Mercurial's RecordExtension.

2. Compatibility with Mercurial

Mercurial

Shelve Extension

1.6 and later

41e13e800fb6 or later

1.5.x and later

d95c583611f8 or later

1.4.x and later

276d8083dc3b or later

1.3.x

18815655993b or later

1.1.x - 1.2.x

7090a3ed2da7

< 1.1.x

ef85a6331d31

3. Configuration

Configure your .hgrc to enable the extension by adding following lines:

[extensions]
hgshelve=/path/to/hgshelve.py

or place hgshelve.py in your 'hgext' directory and add the following lines:

[extensions]
hgext.hgshelve=

If you use the win32text extension, make sure you have the following lines in your .hgrc or mercurial.ini. This enables automatic line-ending translation when applying patches.

[patch]
eol = auto

4. Usage

(this is only a description of the basic usage)

hg shelve

Temporarily stash away changes. You can select the exact hunks of changes you want to shelve.

hg unshelve

Get the changes back into the workdir.

5. Hunk selection

y - shelve this change
n - skip this change

s - skip remaining changes to this file
f - shelve remaining changes to this file

d - done, skip remaining changes and files
a - shelve all changes to all remaining files
q - quit, shelveing no changes

? - display help

6. See also

AtticExtension


CategoryExtensionsByOthers

ShelveExtension (last edited 2020-07-05 06:29:48 by DanKurtz)