localdisk

PHP とか Java とか Web とか好きなことを書きます。

NetBeansでMercurialを使ってみた

最近ちょこちょこライブラリと言えない規模の小さいコードを書いています。

結果をブログに貼り付けるというのもいいのですが、その後修正した場合やこのブログを読んでいただいた方が「ちょっと触ってみたい」という場合、いささか不便だな…と思い始めました。
そこで、誰にでも触れる形でWeb上にあげておくためのサービスを探しました。第1候補は Github だったのですが Git を操作する Windows 用アプリケーションはまだこなれていないので、第2候補の bitbucket を使ってみることにしました。bitbucket は Github の Mercurial 版で 150M までなら無料で使用できます。 Mercurial のもう一つの利点は NetBeans から使用できることです。僕は Java/PHP/Ruby の開発に NetBeans を使用しているので願ったり叶ったりというところです。

Mercurial のインストール

  1. Mercurial binary packages for Mac OS X から Mercurial-1.2.1.exe をダウンロード
  2. Mercurial-1.2.1.exe を実行してインストール

インストールは非常に簡単です。

NetBeans の設定

  1. メニューの「ツール」→「オプション」を選択
  2. 一番右の「その他」を選択して「バージョン管理」タブを選択
  3. バージョン管理システム」で「Mercurial」を選択
  4. Mercurial ユーザー名」にメールアドレスを入力
  5. Mercurial 実行可能ファイルパスに Mercurial をインストールしたディレクトリを入力

NetBeans のプロジェクトを Mercurial で管理する

  1. プロジェクトを右クリック
  2. バージョン管理を選択
  3. Mercurial プロジェクトを初期化を選択


出力ウィンドウに以下の文字列が出力されれば成功です。

Mercurial 初期化

                                      • -

sample のリポジトリを初期化しています
Mercurial の D:\work\sample/.hg ディレクトリを作成しています
次のコミット時に 7 プロジェクトファイルが D:\work\sample のリポジトリに追加されます:
ファイル名…

情報: リポジトリが初期化されました。新しいプロジェクトファイルをコミットしてください
情報: 初期化の終了

.hgignore を編集

「早速コミットだ!」と思ったあなたまだ早いです。このままコミットすると NetBeans のプロジェクトファイルが入っているディレクトリ「nbproject」とか「.hgignore」という余計なファイルまでコミットされてしまいます。
さて、「nbproject」はともかく「.hgignore」はなんでしょう? このファイルはコミットの際に無視したいファイルを指定しておくものです。Subversionsvn:ignore と一緒ですね。「nbproject」や「.hgignore」はコミットしたくないので下記のように追記します。*1

\.orig$
\.orig\..*$
\.chg\..*$
\.rej$
\.conflict\~$
\.hgignore
nbproject

「.hgignore」の修正が終わったらコミットしてみて下さい。上手くいきましたか?

bitbucket のサインアップ

これまでの作業でローカルディスクにリポジトリは作成できたと思います。次はこのリポジトリを公開します。Git に Github があるように Mercurial には Bitbucket というサービスがあります。

Topページの「Plans & Signup」のリンクをクリックして下さい。

すると値段とプランを説明するページに移動したと思います。一番右にフリープランの説明があります。150M まで無料です。Github が確か 100M なので 50M お得! 素敵ですね

Regular Signup の入力欄に「ユーザ名」「メールアドレス」「パスワード」「パスワードの確認」を入力します。

これでサインアップは完了です。

bitbucket にリポジトリを作る

サインアップを終えたので早速リポジトリを作成しましょう。メニューから「Repositories」にマウスを置くとドロップダウンしますのでその中から「Create New」を選択して下さい。

そうするとリポジトリの新規作成画面に移動します。「Name」にはリポジトリの名前「Description」にはその説明「Website」にはあなたのWebサイトのURLを入力して下さい。

入力し終わったら「Create Repository」ボタンを押して下さい。これでリポジトリが作成されました。

bitbucket のリポジトリNetBeans から push しよう

それでは NetBeans で作成したローカルのリポジトリを bitbucket に push(公開) してみましょう。
pull したいプロジェクトを選択し、NetBeans のメニューから「チーム」→「共有」→「プッシュ - 他」を選択して下さい。

プッシュダイアログに以下の形式で入力します。
https://ユーザ名:パスワード@bitbucket.org/ユーザ名/リポジトリ

Mercurial プッシュ

                          • -

情報 - プッシュ中: <外部リポジトリ> - https://localdisk:****@bitbucket.org/localdisk/php_splwrapper/ ...
情報 - プッシュするチェンジセット:
changeset : 1:60a49e769229
author : smoochynet@gmail.com
日付 : Fri Jun 12 23:59:29 JST 2009
summary : test


pushing to https://localdisk:***@bitbucket.org/localdisk/php_splwrapper/
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
bb/acl: localdisk is allowed. accepted payload.
quota: 6.5 KB in use, 150.0 MB available (0.00% used)
情報 - プッシュ先: <外部リポジトリ> - https://localdisk:****@bitbucket.org/localdisk/php_splwrapper/
情報 - 元: php_splwrapper - D:\work\study\netbeans\php_splwrapper
情報: Mercurial プッシュの終了

出力ウィンドウに上記のように出力されれば成功です。途中で課題追跡ダイアログがでてきますが、取り消しボタンをおして下さい。
僕の bitbucket の URL です。

まとめ

使ってみるとわかりますが、ローカルリポジトリは便利ですね。もっと早く使えばよかったなぁ。Git が人気ですが Mercurial もいいですよ。Google Code も Mercurial を採用するようですし。これでいつでもどこでもプログラミングができます。
Let's Enjoy!

*1:「.hgignore」はプロジェクトの直下に存在しますが、NetBeans は「.(ドット)」で始まるファイルは不可視になっているのでエクスプローラーからエディタで開いて修正して下さい。