0

bitbucket.orgのユーザのcommit logをYahoo Pipesでまとめる

mercurial版githubであるbitbucketで、ユーザ名を指定してそのユーザの全リポジトリのcommit logをまとめてRSSで見れるpipesを作った。


Pipes: bitbucket.org user’s all commit log


これまで、bitbucketにはリポジトリ単位でのRSSはあった。でもせっかくほかのユーザをfollowしてもその人が新しく始めたプロジェクトをRSSで知る方法が無かった。
このpipesを使えばユーザ名いれてRSSリーダに登録しておけばすぐわかる。
あるいは自分の全リポジトリマージFeedを作ってfriendsfeedに読み込ませたりできる。


それなりに大きいpipesになった
pipes: bitbucket.org user's all commit log

よく使うモジュールの組み合わせ

  • Loop+FetchPage or Loop+FetchFeed → Regex → Filter(permit matches regex)
    • スクレイピングの定番。取得して切り出してフィルタリング。
  • Rename(copy)→Regex→Loop+StringBuilder
    • itemのtitleや本文を他のプロパティから値を集めて自作する
  • UserInput→StringBuilder(正規表現生成)→Regex
    • ユーザに結果を絞り込ませたい時とか
最近ようやくpipesが楽しくなってきた。


俺のbitbucketでのアカウントhttp://bitbucket.org/shokai/

0

OpenCVの勉強リポジトリ

巨大なaviやbmpもcommitしたいけどbitbucket.orgの容量を使いたくないので、さくらにhgweb.cgiで置くことにした

http://shokai.org/projects/opencv-study/


.hg/hgrc に

[web]
#style = gitweb
allow_archive = gz,zip

と書いてzipでくれ機能を出した。styleはgitwebにしようと思ったけどやっぱりデフォルトにした


0

Mercurialリポジトリホスティング

Flashでよく使われるXMLSocketの.NET実装を作っていて、このドメインでもMercurialで管理しているリポジトリを公開しているんだけど

最近bitbucketとfreeHgにもコピーしてみた。




これらはGitHubのMercurial版で、アカウントを作って自分のリポジトリをコピーして、しかも他の人のプロジェクトが気に入ったらそのままweb上でコピーして改良したりできる。面白い。

bitbucketもfreeHgも日本語のコメントが化けてて困ったけど、今見たらbitbucketは直ってた。これからは積極的にbitbucketにpostするようにしてみるか。

参考:橋本商会 ブログアーカイブ mercurialを使ってみていて、リポジトリとか公開してみたりした


ちなみにXMLSocket.NETは普通のSocketを拡張して作っていて、Flashと接続できるServer、ついでにClient、あとそれらのGUI付きサンプルプログラムができたところ

0

mercurialを使ってみていて、リポジトリとか公開してみたりした

バージョン管理ソフトのMercurialを使ってみている(→日本語チュートリアル

バージョン管理はCVSやSVNすら使ったことがなくてzipに固めて日付でファイル名つけてたんだけど、今のところmercurialで困ったことも特になく便利に使えている。120回ぐらいバージョンを経ても25MBぐらいで済んでくれているので本当に助かる。

Subversion等と違い分散リポジトリらしく、ようするにディレクトリの下に.hgという隠しディレクトリができてその中に全てバージョン管理されて格納される。ディレクトリ毎コピーしてもいいし、必要なくなったら.hgディレクトリを削除しても構わない。

Mercurialを利用している主なプロジェクトは、ぱっと探した感じMozilla、NetBeans、OpenSolaris等があった。

なんでMercurialを選んだかというと

  • サーバーが要らなく、オフラインでも使える
  • プログラマじゃなくても使えそう(むしろプログラム書かない人と共同作業する事が多いので)
  • インストールが楽でみんなに使ってもらえそう→ Mercurial binary packages for Windows and Mac OS X
  • Bootcampで共存してるWindows/Mac間でサーバーを介さずにプロジェクトを受け渡したりしたい
  • とにかく色んな所にバックアップを取りたい

という感じ。

MercurialそのものはPython(とCが少し)で実装されているらしく、使うにはpythonをインストールしなければならない。WIndowsとMacならMercurial binary packageだけで動くが。

とりあえず手当たり次第、自分の持ってる環境にインストールしてみた。これでガンガン同期してます。

Ubuntu7.1だとsudo apt-get install mercurialで一発だった。残念ながらSFCのCNS環境はPythonがバージョン1.5なのでどうにもならなかった。

で、せっかくなのでいくつか、リポジトリをさくらサーバーにcloneして公開してみた http://shokai.org/projects/

特にライセンスについて書いていない物はpublic domainです。改変再配布、切り刻んで再利用などご自由にどうぞ

ドキュメントは気が向いたら書く。

ちなみにコマンドの「hg」はMercurial→水銀→元素記号がhg、ということらしい