開発関係の最近のブログ記事

自分用メモ。

最近のWebサービスは他のサービスのAPIを色々組み合わせるのは当たり前なんだけど、そうしたAPIを検索できるサイト。知り合いに教えてもらった。

http://wafl.net/apis/search?category=30

git show

| コメント(0) | トラックバック(0)

検索するとマニュアルにそれっぽい記述が出てくる。以下、引用。

$ git show v2.6.15:a.txt    # a.txt の過去のバージョンを表示する

いや、そもそもタグ付けしてない限りバージョン番号なんて付いてないんじゃないの?

で、検索して別のページを見つける(→ gitで過去のバージョンを取り出す)。やっぱ、git showでよさそうだけど、バージョン番号はhash値でいいのかな?とかやってみたけどうまく行かない。

[kazu@localhost build]$ git show c272cbcd34f34b90bca786e4bffae0889b635a68:LiftProject.scala
fatal: ambiguous argument 'c272cbcd34f34b90bca786e4bffae0889b635a68:LiftProject.
Use '--' to separate paths from revisions

 結論から言うと、git show <リビジョン>:<ファイル名> でOKなんだけど、ファイル名の所は.gitがあるディレクトリからの相対パスを指定しないと行けないみたい。

[kazu@localhost build]$ cd ../../
[kazu@localhost build]$ git show c272cbcd34f34b90bca786e4bffae0889b635a68:project/build/LiftProject.scala

でOKだった。

m2eclipse

| コメント(0) | トラックバック(0)

mavenって何か良く分かってなかったけど、最近sbtを触ってるうちに、mavenが何をするものかは何となく分かってきた。とはいえ、今の所必要ないし特に使ってなかったんだけど、PARTAKEソースを見てるうちに少し動かしたくなって、そしたらmavenが必須みたいなので、仕方なく使う事にした。

■必要なもの

  • Eclipse
  • m2eclipse
  • mavenは別途入れる必要なし

今まで何回か(1, 2, 3, 4)Eclipse+Bazaarのエントリを書いたけど、ついに動いた(というかしばらく放置してたけど)。

■環境

以下の物は既にインストールされているという前提

  • Eclipse 3.5 (他のバージョンでも多分OK)
  • BzrEclipse (最新のでOKか)
  • Bazaar 2.2.1 (2.2系ならOKかと)

■bzr-xmloutput 0.8.7のインストール

前回書いた通り、bzr-xmloutputはレポジトリから取ってくる必要がある。

bzr branch lp:bzr-xmloutput

あとは、それを上書きする。C:\Program Files (x86)\Bazaar\plugins\xmloutput あたり。

ここまでで、とりあえずローカルのBazaarレポジトリを使う事は出来るようになる。

■インストール

EclipseからGitを使うにはEGitというプラグインを使う。

インストールは公式サイトのここにあるように、Eclipseの通常のプラグインインストールと同じように、Help -> Install New Softwareを選択し、Add Siteで http://download.eclipse.org/egit/updates を追加して・・・って感じ。

使用方法はこれが詳しい(英語)。

■sshの設定

Pageantが立ち上がってればそっちで認証してくれるようにして欲しかったんだけど、そのやり方がよく分からなかったので、Puttyの鍵(*.ppk)をPuTTYgenに読み込ませた後にOpenSSH形式でエクスポートして、それを使うようにEclipseで指定する。

Window -> Preferencesで設定画面を開き、General -> Network Connections -> SSH2のところ。

この辺(英語)を参考にした。

Ubuntuが入ってるVPSを使い始めて数ヶ月だけど、まともに使い始めたのはここ1ヶ月。少しずつ慣れてきた。

最近、VCSはBazaarを使ってるんだけど、Ubuntu 9.04に入ってるのはbzr 1.xとかなり古いバージョン。せっかくなので新しいバージョンを使いたいのでアップデートしてみた。基本的にはこのページの通り。

■手順

/etc/apt/sources.list に以下の2行を追加。

deb http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main

GPGキーのインポート

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8C6C1EFD

当然ながら8C6C1EFDの部分はバージョンによって異なる。

あとは、apt-get updateとか普通の手順でbzrインストールする。

■Scalaの開発にはとりあえずENSIMEを使ってる

EclipseのScala IDEが不安定だとの話を聞いていたので、Scalaの開発環境はとりあえずENSIMEを使っている。

まだそれ程使ってはないけど、コードの中であるクラスについて調べたい時に「M-.」とやるとInspectorというのが立ち上がって、そのクラスの定義が見られるのが便利(多分、それ以外にも色々便利な機能があるんだろうけど、まだ全然使いこなしてない)。

ENSIME-Inspector.png

上の画面を見ると分かる通り、docという水色の文字の所でEnterを押すと、Scaladocに飛べるはずだが、何も設定をしてないと以下のようなエラーメッセージが出る。

No Usable Browser Found

これを直したい。

タイトル通り。シンボリックリンクを含むブランチをWindows上に持ってこようとすると以下のようにエラーになる。

>bzr branch sftp://user@host.example.com/path/to/branch
bzr: ERROR: Unable to create symlink 'foo/link' on this platform

バグレポート(81689)も上がってるけど、Windowsユーザーは少ないのか、直される気配無し。

BazaarをWindowsから使ってる。プロトコルでsftpを使う時に、パスワードを聞かれないようにしたい。

■環境

  • Windows 7
  • Bazaar 2.2.0 standalone

■方法

前提として、普通にPuTTY + Pageantでパスワード無しでログインできるようになっている事。

plinkコマンドで一度対象のホストにつないでおく必要がある。(そのサーバーのfingerprintをキャッシュさせるため)

> plink host.example.com
The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's rsa2 key fingerprint is:
ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, without
adding the key to the cache, enter "n".
If you do not trust this host, press Return to abandon the
connection.
Store key in cache? (y/n) y
login as: username
Last login: Sat Sep 18 19:12:30 2010 from pc.example.com

SAKURA Internet [Virtual Private Server SERVICE]

y]0;username@wwwNNNNu:~[username@wwwNNNNu ~]$ exit
logout

環境変数の設定(システムのプロパティから設定してもいいし、以下のようにsetコマンドを使用しても良い)

set BZR_SSH=plink

後は普通にbzrコマンドを使えばOK。

bzr branch sftp://user@host.example.com/path/to/branch

■余談

Bazaarがうまく動かなくなった。bzr-xmloutputの問題で、最新の0.8.7を使おうとした時に(その時のエントリ)、元のxmloutputをバックアップしてたんだけど、バックアップを取る時に単にCtrl-C, Ctrl-Vでpluginsフォルダの下にバックアップを取ってたのがまずかったらしい。別の場所に動かしたら大丈夫だった。

今まで何回か(1, 2, 3)Eclipse+Bazaarのエントリを書いたけど、結局うまく動いていないっぽい。BzrEclipseが固まる。色々情報を探していた時にふと公式のインストールページを見ると、以下の記述が。

With bzr >= 2.1.0, bzr-xmloutput >= 0.8.7 (the latest code from trunk) is required (see Bug #526740)

 Bazaar 2.1.0以降を使う場合は、bzr-xmloutputは0.8.7以上を使ってね、との事。もっとちゃんと読んでおくべきだった。しかし、Bazaar 2.1.0のパッケージに同梱のbzr-xmloutputを0.8.6じゃなくて0.8.7にしてくれればいいのにって思う。

とりあえず以下のコマンドでbzr-xmloutputの最新版を取ってきたんだけど、普通に上書きをすればいいのだろうか…

bzr branch lp:bzr-xmloutput

このブログの作者

名前:kazu
仕事:IT関係の何でも屋
メール:kazu 後幕 kazu どと tv
詳しくはこの辺

このアーカイブについて

このページには、過去に書かれたブログ記事のうち開発関係カテゴリに属しているものが含まれています。

前のカテゴリはレンタルサーバーです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ