彷徨えるフジワラ

年がら年中さまよってます

"hg rollback" のガード機能

TokyoMercurial #1 で話題になった件の詳細シリーズ - その1。

ちなみに、TokyoMercurial #1 開催日の 01/14 から随分時間が経っているのは、決して忘れていたとかではなく、なんとか 2.1 版リリースに間に合わせようと case insensitive filesystem 対応の修正を頑張っていたため。

もっとも 01/19 時点でリリースに向けたコード凍結宣言が出てしまったので、結局修正は間に合わなかったのだけれど .... まぁ、影響範囲が思った以上に広いので、ボチボチ行くとするか。

で、"hg rollback" のガード機能の話。

今更ではあるかもしれないが、"hg rollback" の機能を再確認しておくと、『直前に追加記録された履歴情報を、管理領域から破棄する』というもの。

ちなみに一見同じような『やりなおし』的ニュアンスを持つ "hg revert" の機能は、『特定時点 (※ 通常は親リビジョン時点) の内容で、作業領域中のファイルの内容を上書きする』というもので、履歴情報への影響の有無の点で見れば、両者は全く異なる機能であることがわかる。

"hg rollback" の破棄対象となる『履歴情報の追加記録』を行うのは、以下のコマンド群:

  • commit
  • import
  • unbundle
  • pull
続きを読む