2010-06-04(金) [長年日記]
■ tDiary: 公式リポジトリとの同期やらなんやら
先日作成した環境は、単に公式をforkしたマイ・リポジトリを使ってtDiaryの実行できるようにしただけなので、公式がアップデートしても追従できない。そこで、今日はもうちょっと整備。
まずは公式をremoteリポジトリ「official」に設定する(以下coreの場合。同様にblogkit/theme/theme-nonfreeでも実施する):
% git remote add official git@github.com:tdiary/tdiary-core.git
remote先としてSSH用の(更新可能な)URLを指定しているが、おれのように管理者でない場合はHTTPやRead-OnlyのURLを使うことになるだろう。
で、公式の先っぽを持ってきてからマージする:
% git fetch official * [new branch] master -> official/master % git meage merge official/master (差分がある場合はここにいろいろ出る)
もちろん、Github上の公式を直接マージしちゃってもいい
% git pull official master
マージ後はgit pushすれば、GitHub上のマイ・リポジトリも公式と同じになる。
2010-06-02(水) [長年日記]
■ オリンパスの写真コミュニティサイト「FotoPus」が人力チェックをしている件
E-PL1のユーザ登録をしたらオリンパスからメールが来るようになったので読んでみたら、今月中にFotoPusへ10枚写真を公開したらオンラインショップで使えるポイントを2000ポイントもくれるという。これはお得だ。というか、登録時ですでに3000ポイントもくれているので、かなりの大盤振る舞い。大丈夫か。
で、さっそく登録して、いくつか写真をみつくろい、アップロード。ついでにプロフィールなんかも整備したんだけど、写真が公開されるまではしばらくかかるらしい。今どき珍しい夜間バッチだろうか?
……なんてのんびり構えていたらさっき事務局からメールがきて「プロフィールに使っているイラストの権利関係は大丈夫か」だって。えええー! まさか、いちいち人力でチェックしてるの!?
ご存知のとおり(?)、おれのプロフィール画像は数年前に公募したもので、権利関係の問題はないよ*1……という返事をしたついでに、「もしかして写真の公開も人力チェック後ですか」ときいたら「そうだ」と返事が来た。うはー。プロバイダ責任法さん、どこ行ってもうたんや。
つーかさ、「今日撮ってきた写真を公開したから見てね!」というのと「今日撮ってきた写真、公開したけど明日にならないと見れないから」では、ユーザ体験に天と地ほどの差があるくらい自明だろうに。フィルム時代ならまだしも、デジタルになったんだから、撮ったら即日見られるようになってなきゃ意味がない。こんなんで「コミュニティ」とか名乗るのやめて欲しいなー。
ちなみに、自分のマイページのPermalinkを見つけるのにもえらく苦労してしまった(わざわざログアウトしてから自分の写真を検索して見つけるしまつ)。この長ったらしいURLを見ても、モダンなWebサービスからはほど遠いわけで、Webの世界で日本企業が勝てない理由がよくわかる気がしたよ。
*1 metlogさんにはまだ約束を果たせていないんだけど。
2010-06-01(火) [長年日記]
■ tDiaryのソースコード・リポジトリをGitHubに移行した
公式サイトのアナウンスのとおり、SourceForge.netにあったSubversionリポジトリをread onlyに格下げして、公式の開発用リポジトリをGitHubに移転した(というか手を動かしたのはhsbtである。おれは指をくわえて見てただけ)。
まだSubversionへの同期は未稼働だけど、基本的に同じものが取れるようにしておく予定なので、今までanonymous svnで最新版を持ってきていた人はそのまま使い続けていて問題ないし、開発する人もsvn上で作ったパッチを提供してもらってぜんぜんOK。
といってもおれがsvn使い続けてるわけにもいかないので(笑)、Git上で開発するためにまずは自身の環境を整えなくてはいけない。
まず(GitHubのアカウントはもう取得済みとして)、公式リポジトリを自分のリポジトリへforkする。もちろん、直接cloneしてもいいのだが、何か大きな変更をするときにトピックブランチを切りやすくするためにはforkして自分だけのリポジトリを持っておいた方がいいだろう。
まずはtdiary's Profileからtdiary-coreに行き、forkボタンを押す。これで自分のところに同名のリポジトリができる。同様にtdiary-blogkit、tdiary-theme、tdiary-theme-nonfreeを必要におうじてfork。なお、従来あったpluginはcoreのmisc/pluginにマージされたので今はもうない。
あとはfork済みのリポジトリから、自分の開発環境にcloneする。
% mkdir tdiary % cd tdiary % for repo in core blogkit theme theme-nonfree; do; git clone git@github.com:tdtds/tdiary-${repo}.git ${repo}; done : : % ls blogkit core theme theme-nonfree
あとはtdiary.confの@options['sp.path']あたりで従来独立していたpluginを差していたら、それをcore/misc/pluginに書き換えるなどすればそのまま動くはずである。
今日はここまで。この環境で、自分のためのトピックブランチを切ってそれを複数マシンで共有しつつ開発し、できたパッチをorigin masterに反映するというワークフローを身につけないといけないのだが、これがまた、年をとって硬くなった頭にはなかなかキツいわけですが。まぁ、できるうちにモダンな開発スタイルを身につけておかないとねー。