2012年3月31日土曜日

MercurialEclipseを使ってみてはいかがでしょう

今月一回もブログ書いてない…
Gistにゴミのようなメモがちょっと溜まったくらいだなぁ…今月

前回需要あるかなとか言ったんでちょっとだけ。
個人的にはすごくお世話になっています。
まあこの一ヶ月全然Eclipse触ってないけど。

基本的な使い方は
http://javaforge.com/project/HGE
に行ってとりあえず動画を見るのがいいんじゃないでしょうか?



とりあえずインストール


Macだと既にHgへのパスが入っている。winだと指定しないとダメかも知れない。


QuickDiffとかお好みで


設定しておくと、編集した箇所が一目でわかってちょっと幸せ




以下普段こんな感じで使っている系

まずいつも通りテキトーなプロジェクトを作ります。
テキトーに作ったら、リポジトリを作ります。ターミナルから(ぇ

$ cd path_to_project_root
$ hg init
もちろんプラグイン側から作ってもいいんですが、なんかinitだけはコマンドが楽なんです。俺は。

その他

workspace
├── project
└── projectTest

みたいな環境でworkspaceでリポジトリ(projectとprojectTestで1リポジトリ)作りたい!みたいな場合
多分eclipseから生成は出来なさそうだし…とか。まあ確認してませんが。
→ちなみに上記構成でもEclipseはちゃんと認識しますし、下記作業も当然可能です


eclipse に戻って読み込む



するとこんな感じ


とりあえずコミット…いや、せっかくだしMQ使いましょう


通常のコミットと同じ画面で作業ができて便利



二個目



コミットメッセージ間違えた?
さっきのパッチにもっと変更加えた(減らした)状態にしたい?
qrefreshでどぞー



こんな感じで常に qseries の状態が見えるような状態



リビジョングラフ的な。
Mercurialに限らず、やはり履歴の確認はGUIツールが断然いいですね


表示されない場合とかはShow Historyを選択してみたら意外と何とかなるかもしれない



編集して差分が発生したファイルはこんな感じで確認できる


ちょっと目立たないなぁ…とか思ったら色とか変えてみてはどうでしょう




みたいな感じでMQの機能全部では無いにしろ普段良く使いそうな部分はしっかり網羅されています
もちろんMQ以外もフツーに使えます。

ただ下記は残念ながらできなかった記憶があります

$ hg qrefresh hogehoge #存在しないパスを指定して未コミット状態に戻す
$ hg qpush hoge.diff --move
$ hg qguard

他にもrecordとか出来なかった記憶が。
あと、Mercurial自身のversionは2.1.1とかでも余裕で動きますが、当然phaseとかは無理
もちろん $HOME/.hgrc とかに各エクステンションを有効にする記述が必要

その他、ターミナルからコマンド叩いた結果はすぐには反映しなかったりとか、
使い込んでくると微妙に惜しい部分が出てきます。多分。

qfoldが使えるんで自分は
・qnewでこまめにパッチ発行
・qfoldで適当にまとめたのちリビジョン化
という使い方をやってます。

ちなみにこのプラグインに出会ってから「MQかわいいよ、MQ」状態になったのが俺です。


そういえばhgsubversionを有効にしていたら、このプラグイン経由でsubversionにpushとかできるのかな?
次回の #tokyomercurial で試してみよう。






0 件のコメント:

コメントを投稿