Size: 1463
Comment: add note on mercural compatibility
|
Size: 1184
Comment: Expand hatnote: refer users of earlier versions to ThirdPartyShelveExtension
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== Shelve Extension == | #pragma section-numbers 2 = Shelve Extension = |
Line 3: | Line 4: |
'''This extension is not distributed with Mercurial.''' | '''This extension is distributed with Mercurial 2.8 and later. If you are using an earlier version of Mercurial, see ThirdPartyShelveExtension.''' |
Line 5: | Line 6: |
''Author: TK Soh <teekaysoh@gmail.com>'' | ''Author: Bryan O'Sullivan'' |
Line 7: | Line 8: |
Repository: [http://freehg.org/u/tksoh/hgshelve/] | ''Current maintainer: Facebook'' |
Line 9: | Line 10: |
=== Overview === | <<TableOfContents>> |
Line 11: | Line 12: |
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. | == Overview == |
Line 13: | Line 14: |
The shelve extension has been adapted from Mercurial's RecordExtension. | The shelve extension lets you set your pending changes aside temporarily and restore them at a later time. It is useful in situations where you need to switch tasks, but are not ready to commit your current work. |
Line 15: | Line 16: |
=== Compatibility with Mercurial === | == Configuration == |
Line 17: | Line 18: |
The latest version of '''hgshelve''' requires Mercurial version 1.1 or later. Mercurial users of older version will need to 'downgrade' to older version of '''hgshelve''' at changeset [http://freehg.org/u/tksoh/hgshelve/rev/ef85a6331d31 ef85a6331d31]. === Configuration === Configure your .hgrc to enable the extension by adding following lines: |
Configure your ''`.hgrc`'' to enable the extension by adding following lines: |
Line 25: | Line 22: |
hgshelve=/path/to/hgshelve.py | shelve= |
Line 28: | Line 25: |
or place hgshelve.py in your 'hgext' directory and add the following lines: | == Usage == |
Line 30: | Line 27: |
Temporarily stash away changes: | |
Line 31: | Line 29: |
[extensions] hgext.hgshelve= |
hg shelve |
Line 35: | Line 32: |
=== Hunks selection === |
List all existing shelves: |
Line 38: | Line 34: |
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 |
hg shelve --list |
Line 51: | Line 37: |
Get the changes back into the working directory: {{{ hg unshelve }}} Shelves can be given custom names (the default name is your active bookmark or branch): {{{ hg shelve --name <name> hg unshelve <name> }}} See `hg shelve --help` for advance usage. == See also == * ThirdPartyShelveExtension * AtticExtension * [[/Talk|Talk]] page |
|
Line 52: | Line 56: |
CategoryExtension | CategoryBundledExtension |
Shelve Extension
This extension is distributed with Mercurial 2.8 and later. If you are using an earlier version of Mercurial, see ThirdPartyShelveExtension.
Author: Bryan O'Sullivan
Current maintainer: Facebook
Contents
1. Overview
The shelve extension lets you set your pending changes aside temporarily and restore them at a later time. It is useful in situations where you need to switch tasks, but are not ready to commit your current work.
2. Configuration
Configure your .hgrc to enable the extension by adding following lines:
[extensions] shelve=
3. Usage
Temporarily stash away changes:
hg shelve
List all existing shelves:
hg shelve --list
Get the changes back into the working directory:
hg unshelve
Shelves can be given custom names (the default name is your active bookmark or branch):
hg shelve --name <name> hg unshelve <name>
See hg shelve --help for advance usage.