SSブログ

Mercurial extension mqを使う [Linux]

問題定義
・ブランチを作るとそのブランチがごみになったときにリポジトリが美しくないので残したくない
・なんだかんだでhg diffの出力をパッチとして管理しておくと何かと便利
・しかし多段パッチ管理は面倒

という場合に使える。
が、他のページを見ていても説明が長いので簡潔に書いておく。

hg mqつかいかた

・罠
 LennyのMercurialはちょっと古いので最後のqfinishが実装されていない。
 ソースをコンパイルして動かすとhgextが無いのでmqが最初から動かない

・準備
hg qinit [-C ?]
mqのコマンドが使えるようになる。

・パッチの登録
変更前に
hg qnew patch-name
すでに変更している場合には-fをつける
変更が終わったら
hg qrefresh
でパッチとして登録

・パッチの確認
hg qseries
でパッチをいくつ保存しているか確認できる。
今適用されているパッチの表示は
hg qdiff

・パッチの削除
hg qdelete パッチ名

・パッチのリポジトリ化
hg qfinish

・親リポジトリとのマージ
hg qpop -a
hg pull -U
hg qpush -a
でコンフリクトがなければ問題なし
コンフリクトがあったら
qsave -mとかで3WAYマージをするらしいが
やってないのでよくわからない

qfinishのときにコメントをつけられるようにしてほしかった。
qmessageとかあったきもする。
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

長島☆自演乙カブトガニ ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。