Mercurial で複数のチェンジセットを 1つにまとめる

(2011/06/09) より操作が簡単な Histedit を使った方法を Mercurial でリポジトリを簡単に修正する Histedit の使い方 - A Day in Serenity @ kenjis に記載しました。


Mercurial で複数のチェンジセットをまとめる方法です。

MQ を使いますので、「~/.hgrc」に以下を記載します。

[extensions]
mq =

それでは、r2263 (tip) と r2264 をまとめます。

r2263 と r2264 をパッチに変換します。

$ hg qimport -r 2263:tip

適用されているパッチを確認します。

$ hg qapplied
2263.diff
2264.diff

もっとも古いチェンジセット r2263 のパッチへ戻ります。

$ hg qgoto 2263.diff
2264.diff の適用解除
適用中の最上位パッチは 2263.diff です

適用解除されたパッチをまとめます。

$ hg qfold -m "r2263 と r2264 をまとめる" 2264.diff 

パッチをリポジトリに記録します。

$ hg qfinish -a

これで完了です。