2011年07月01日
↓こんなリポジトリとワーキングディレクトリがあったときに
% svn info パス: . URL: file:///home/haruta/svn/repos/test/trunk/test-dir リポジトリのルート: file:///home/haruta/svn/repos/test リポジトリ UUID: f885fc46-82eb-4db3-adb6-3f8d8f5f2b2a リビジョン: 4 ノード種別: ディレクトリ 準備中の処理: 特になし 最終変更者: haruta 最終変更リビジョン: 4 最終変更日時: 2011-07-01 01:14:34 +0900 (金, 01 7月 2011)↓こんな感じで変更して svn commit
% echo "testtesttest" > test.txt % svn st M test.txt % svn ci -m 'test commit' 送信しています test-dir/test.txt ファイルのデータを送信しています . リビジョン 5 をコミットしました。↓このときのワーキングディレクトリの状態はこんな感じ
% svn st -v
4 4 haruta . #← rev 4
5 5 haruta test.txt
↓リポジトリ側は
% svn info file:///home/haruta/svn/repos/test/trunk/test-dir パス: test-dir URL: file:///home/haruta/svn/repos/test/trunk/test-dir リポジトリのルート: file:///home/haruta/svn/repos/test リポジトリ UUID: f885fc46-82eb-4db3-adb6-3f8d8f5f2b2a リビジョン: 5 #← rev 5 ノード種別: ディレクトリ 最終変更者: haruta 最終変更リビジョン: 5 最終変更日時: 2011-07-01 01:42:27 +0900 (金, 01 7月 2011)↓こんな状態になるので、この状態 test-dir を svn rm して svn commit しようとすると out of date と言われてエラーになる。
% svn rm . % svn ci -m 'test svn rm' Deleting test-dir svn: Commit failed (details follow): svn: Directory '/trunk/test-dir' is out of dateなので test-dir を svn update して ワーキングディレクトリのリビジョンをあげないといけない。 リポジトリのリビジョンをあげるならワーキングディレクトリのリビジョンもあげてくれてもいいと思うのだけど。。。
2011年03月02日
同僚がHTTP_Requestでファイルアップロードするのに一回ファイルに保存するのが気に食わないというので適当にかいた。
まぁ普通にmultipartのデータつくってstream_context_createでContent-Typeとか設定してるだけ。
<?php
$boundary = '---------------------------'.time();
$data = <<< __data
--{$boundary}
Content-Disposition: form-data; name="test"
hogehoge
--{$boundary}
Content-Disposition: form-data; name="test2"
foobar
--{$boundary}
Content-Disposition: form-data; name="file"; filename="test.txt"
Content-Type: text/plain
value2
--{$boundary}--
__data;
$header = array(
"Content-Type: multipart/form-data; boundary=".$boundary,
"Content-Length: ".strlen($data)
);
$context = array(
"http" => array(
"method" => "POST",
"header" => implode("\r\n", $header),
"content" => $data
)
);
$ctx = stream_context_create($context);
$url = 'http://example.com/upload_url';
var_dump(file_get_contents($url,false,$ctx));
2010年05月28日
DoCoMo/1.0
もしくは、ユーザーエージェントの先頭から
DoCoMo/2.0 機種名(c100;
のユーザーエージェントをiモードブラウザ1.0として判別すれば良さそう。 で、コードにするとこんな感じになるかな。と。
<?php
/**
* iモードブラウザ1.0ならtrueそれ以外ならfalseを返す
*/
function imode_browser_v1($ua){
if( preg_match('/^DoCoMo/1.0/',$ua) ){
return true;
}
elseif( preg_match('/^DoCoMo/2.0[^(]+(c100;/',$ua) ){
return true;
}
return false;
}
で、
<?php
var_dump(imode_browser_v1('DoCoMo/1.0/SH506iC/c20/TB/W24H12'));
var_dump(imode_browser_v1('DoCoMo/2.0 F900i(c100;TB;W22H12)'));
var_dump(imode_browser_v1('DoCoMo/2.0 P07A3(c500;TB;W24H15)'));
な感じで実行すると
bool(true) bool(true) bool(false)のようになる。 docomoはiモードブラウザ2.0になるタイミングで、ユーザーエージェントを DoCoMo/2.5 とか DoCoMo/3.0 とかして、DoCoMo/2.0 とは別のものにしてくれれば良かったのになぁ。。。
2008年12月16日
2008年08月29日
歩いて帰っていたので仮に届けられたとしても、どこの交番に聞けばいいかわからず、警視庁のサイトには交番の電話番号も乗っていなかったので、交番から警察署に届けられるぐらいの時間は必要だろうなぁ。と思い、2泊ほどマンガ喫茶等に泊まっていました。
落とした2泊後の8/27の昼に淡い期待を抱きながら渋谷警察署に電話で聞いてみたら、それらしい鍵が届けられてるとのこと。確認しにいったら見事に自分の落とした鍵で、無事家に入ることができました。
鍵を受け取りにいったら拾ってくれた人は謝礼とかいらないということなので、名前など個人情報は伏せられいて知ることはなかったのですが、いつか拾ってくれた人が何かの拍子にこの記事をみて「これ自分だ。」と思ってくれるといいなぁ。と思い日記に残します。
再度ですが、
2008/08/26 01:00〜04:00 ぐらいの間に渋谷で赤いキーホルダーを拾って交番に届けてくれた人ありがとう!
そのおかげで、こうして家からネットにつなぐことができるし、家で寝ることができます。ほんとうにありがとう。
そして、もし自分がそういう状況に遭遇することがあれば、自分もそういう行動ができるようにしたいなと思い、ここが日本でよかった。と思った、そんな3日間でした。
2008年07月29日
秋期の情報処理試験の受付が始まったのでNW試験に申し込みました。
去年の秋期から受け始めて基本情報処理→ソフ開ときて次はアプリケーションなんとかという試験を受けようかとも思ったのですが、業務システムに関する知識が求められてる試験っぽいので、それよりは今の自分の仕事に関係の深いNWを受けることにしました。
本当はデータベースかセキュリティが受けたいのですが春にしか実施しないのでしょうがないです。秋期と春期でなぜ実施試験を変えてるのかし知りませんが、出題とか問題とか採点の問題なんですかね。これって。
ちなみに来年の春期から制度が変わるらしく、この試験のいまの名称が「テクニカルエンジニア(ネットワーク)試験」というのですが、来年からは「ネットワークスペシャリスト」という名称に変わるらしいです。どうでもいいことなんですけど、「ネットワークスペシャリスト」って名前の方がなんとなく凄いっぽいですよね^^
前回(春期)に受けたソフ開は一応合格はしたのですが、かなり一夜漬けに近い状態だったので、今回は前回の反省を踏まえて、今からマスタリング TCP/IP を読み返しています。
2008年07月24日
Gmail がメイン
- i.softbank.jpはMail.appに設定しなくてもYou got a Mailが届くのでGmailからi.softbank.jpへ転送
- yahoo.comはpushが利用できるのでGmailからyahoo.comへ転送
- Mail.appにGmailを設定すると未読が無駄に増えるのでフェッチは手動
- Mail.appで返信の引用の消し方がわからないのと絵文字が来たときがめんどくさいので受信メールの閲覧、返信はGmailのWEB(モバイル用)
- i.softbank.jp と yahoo.com で通知を受けてホーム画面においたブックマークからGmailのWEBを開いて返信
- このときにデフォルトで本文のテキストエリアに返信のテキストが入っているのと「引用テキストを含める」にチェックが入っているのが邪魔なので
javascript:void(function(){document.getElementById('body').value='';document.getElementById('haot').checked=false})()javascript:void(function(){document.getElementById('body').value=''})() - こんなブックマークレットを用意して引用テキストとチェックボックスをクリアしてからメールを書いて返信してすぐにアーカイブ
- このときにデフォルトで本文のテキストエリアに返信のテキストが入っているのと「引用テキストを含める」にチェックが入っているのが邪魔なので
これだと、yahoo.comのメールの未読がたまるのでどうにかしたい。yahoo.comからのpushをあきらめるしかないのかな。。。悩ましい。
続きを読む2008年07月22日
もともとワンセグもお財布ケータイもついてない端末で、いわゆるケータイサイトも絵文字も使ってなかった自分としてはなんの不満もなく使っているんだけど、これってCLIでもっと便利にならないのかなー。と考えることがある。
PCの世界でGUIに対してCLIがあるようにケータイというかモバイルの端末にそれがもっと普及しないかなー。と。
そしたらそれはそれで使いたい人がいるんじゃないかと妄想する。
Windows Mobile ではできるのかわからないけど、AUのKCP端末でそういうことが出来る端末が出たら面白いのになー。
まぁ完全にただの妄想でちら裏。
2008年07月14日
発売日から遅れること2日。ついにiPhoneを手に入れることが出来ました。
渋谷の明治通沿いのSoftBankショップへ立ち寄って、だめもとでiPhoneの在庫ありますか? と聞いたらなにやら白の16GBがキャンセルで1台あるとのこと。購入の準備はしてきていたのでMNPでiPhoneを入手しました。
とりあえず、まだ設定が終わったばかりなので、これからいろいろいじってみます。
ちなみにソフトバンク3GとWi-FiでそれぞれWEBアクセスした時の$_SERVERの出力をとって比較してみたところ、
[haruta@]$ diff log{,_wifi}.txt
11,13c11,13
< 'REMOTE_ADDR' => '126.250.13.77',
< 'REMOTE_HOST' => 'pw126250013077.10.tik.panda-world.ne.jp',
< 'REMOTE_PORT' => '51050',
---
> 'REMOTE_ADDR' => 'うちのIP',
> 'REMOTE_HOST' => 'うちのHOST',
> 'REMOTE_PORT' => '51049',
のように接続元の情報以外は ソフトバンク3Gの回線とWi-Fiで差異はみられませんでした。
また、$_SERVERにSoftBank特有の情報はみられませんでした。
UserAgentは http://labs.unoh.net/2007/10/iphoneipod_touch.htmlで出ているものと大差ありませんでした。なので、うん。まぁ、そういうことらしい。ということです。
そんなこんなで iphone sdk も無事 Mac Bookにインストールできたので、これからiPhoneを楽しみたいと思います。
2008年06月27日
家のメインマシンであるVaio(650MHz,256M)が限界なのと
iPhoneSDKを触りたい、
あとソフ開に合格した自分へのご褒美(笑)など
諸々の理由で思い切って買ってみました。
とりあえず、いつも行く BONGOUT NOH という飲み屋でセットアップしていたら
maru_ccが突然
sudo rm -rm /
したらどうなるんだろと
わかりきったことを言い出したので、
そんなのできねーよ。という結果が返ってくることに
淡い期待を抱きながらやってみてもらったら、
普通に20分経ってもコマンドの結果が返ってこなくなりました。
どう考えても普通に実行されています。本当にありがとうございました。
そんなわけで、今はさっき買ったばかりのMacBookにOS再インストール中で、
起動と停止とディスク読み込みを繰り返しています。
今週中には〜をしたら最初にするN個のこと。
みたいなやつをこなしたいなーと思います。
ちなみに左が旧マシンのVaioで右が新マシンのMacBookです。

