2014年1月23日木曜日

Mercurialでgit stashっぽいことをする方法

Mercurialでgit stashと同様の機能を使用する場合、shelve extensionを使用する。


shelve extensionの有効化


Mercurial 2.8以降であれば標準で組み込まれているので有効化する。
.hgrcまたはMercurial.iniに以下を記述する。
[extensions]
shelve =
2.7以前で使用する場合はローカルにモジュールを取得する必要がある。
$ hg clone https://bitbucket.org/astiob/hgshelv
その後、.hgrcまたはMercurial.iniに以下を記述して有効化する。
[extensions]
shelve = /path/to/hgshelve.py


使用方法


ローカルの変更を退避させておくには以下のコマンドを使用する。
$ hg shelve
逆に退避させたものを取り出すには以下のコマンドを使用する。
$ hg unshelve
退避させたものの一覧を表示するには以下のコマンドを使用する。
$ hg shelve --list
shelve/unshelveする際に名前を指定したい時は以下のように--nameオプションを使用する。
名前を指定せずにshelveした際はブックマーク名またはブランチ名が使用される。すでにそのブックマーク名なりブランチ名でshelveされている場合は連番を追加した名前なる。
$ hg shelve --name <name>
$ hg unshelve --name <name>
shelveしたものを取り出さずに削除する場合は以下を使用する。
$ hg shelve --delete <name>

0 件のコメント:

コメントを投稿