このエントリーをはてなブックマークに追加

TortoiseHgでshelveを使う

この記事はTortoiseHgアドベントカレンダー 2012の10日目です。

shelveとは

えー、割愛します。

shelveとはなにか、また、mercurialコマンドラインでの使い方はMercurialでshelveを使うを参考にしてください。

TortoiseHgでのインストール

必要ありません。最初から使えます。

使い方

「リポジトリ」->「シェルフ」でウィンドウが開きます。

ちなみに、この文言は「変更点の退避 (shelve)」としようという意見がMLで出ていますので、将来的に変わる可能性があります。

変更を一時的に保存

../../../_images/shelve-1.png

シェルフウインドウは右と左に大きく分けられています。

  • 右: シェルフの中身
  • 左: 作業ディレクトリ

保存する場合は、「左から右」へと変更を移すことになります。

上の方に矢印がありますので、

  • 変更ファイル全部
  • 指定したファイル
  • 指定した変更(Hunk、チャンク)
    • 下の変更が表示されている部分の左側をクリック
    • 選択すると色が変わります

を右に移すことで一時的に保存ができます。

なお、shelveの内容は通常のMercurialと同じく.hg/shelvesに保存されます。 下の方に.hg/Trashcanに保存されるとありますが、これはTortoiseHgのバックアップディレクトリです。

警告

初出時に Trashcan に保存されると書きましたが、間違いでした。すいません。

保存した変更を戻す

../../../_images/shelve-2.png

元に戻すには「右から左」となります。保存するときと同様に選択して右上の矢印ボタンを押します。

複数のシェルフがある場合は、ボタンから選べます(画像は選んでいるところ)。

コマンドラインからshelveを使う (なくなりました!)

警告

tortoisehg.util.hgshelveはなくなったそうです!

https://bitbucket.org/tortoisehg/thg/issue/1908/

お詫びして訂正します。

hgshelveは同梱されませんので、通常はコマンドラインから使えません。が、TortoiseHgには同梱されていますので、コマンドラインから使いたい時には以下を.hgrcに書いておきます。

[extensions]
tortoisehg.util.hgshelve=

まとめ

TortoiseHgでのshelveツールの使い方を紹介しました。shelveツールはMercurialに慣れていない人にも使いやすい便利なツールですので、使ってみてはいかがでしょうか。