SSブログ

Mercurial MQのまとめ [プログラミング]

2chで話題になったので自分の使い方のまとめてみた。

■初期化
hg qinit

■編集、パッチ作成
hg qnew -f [patch_name]

■他の人の更新の取り込み
複数人開発でコミットするときにブランチを作りたくないので

hg qpop -a
hg pull
hg update
hg qpush [-a]

qpop/qpushで適用、未適用ができる。

■順番を入れ替えたいとき
hg qpop -aしてから
.hg/patch/seriesの順番を書き換えてもうまくいく。
本当は正しい方法があるのかもしれんが。

■パッチのコミット化
hg log -l[[:digit:]] で確認 qbaseやqtipなどのタグが増えている。
hg logで確認してテスト用のパッチをコミットしてしまわないようにする。
hg qfin -a


そもそもMQを使うと良いのは
hgで間違ってコミットしたときに消せないから。
MQで仮コミットして簡単にビルド、デバッグまでやってからコミットしてる。

で、確認中に誰かがコミットするかもしれないので、コミット前に上記の更新作業をやってから、コミットする。
独りで使う場合も、複数の変更を1つのチェンジセットにいれるのは躊躇われるので、qnew [-f]でガンガンパッチを作るようにしている。

なお、ヘッドを消したい場合はcloneでリビジョン指定するようだ。
http://mercurial.selenic.com/wiki/PruningDeadBranches


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

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

トラックバック 0

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