2010年6月20日日曜日

Bazaarを使ってみたので分かった事のまとめ

Mercurialを使ったことがあるならすぐ慣れると思うけど
Mercurialは単一のリポジトリでブランチを管理できるけどbzrは切り離す必要があるということは注意
* マニュアル
公式マニュアル
http://doc.bazaar.canonical.com/ja/
Bazzar Wiki
http://www19.atwiki.jp/bazaar/pages/1.html

* Logの参照
1から3までのログを参照
bzr log -r 1..3
今日の変更を参照
bzr log -r today
最新の変更を参照
bzr log -r last:
ちなみにbzr log -vとやると変更ファイル一覧が見れる

* 現在のリビジョンを確認
bzr revno

* リポジトリの情報を表示
bzr info

* ブランチからmerge
bzr merge /tmp/hoge

* push/pull
ブランチから変更を送信/取得

* ブランチを作成
mercurialと違ってブランチはリポジトリも切り離す
必要がある
bzr ./ /tmp/hoge
http://d.hatena.ne.jp/methane/20090825/1251175889

* 無視リスト
bzr ignore "hoge"
これで.bzrignoreに追加される(手動で追加しても良い)
デフォルトでワイルドカードが有効
例) classの拡張子を無視
bzr ignore "*.class"
!を最初につけると例外を追加できる
例)~で終わるファイルを無視しない (*~はデフォルトで無視リストに入っている)
!*~
RE:をつけると正規表現が使える
例)libディレクトリは以下の.oファイルを無視
bzr ignore "RE:lib/.*\.o"
ちなみにbzr ignoredで実際に無視しているファイルを確認できる
※一度管理下に置かれてしまったファイルは無視できないため、bzr rm --keepで一旦削除して下さい

* Web Interface
loggerhead ってのがあった
aptでインストール serve-branchesで起動

* 共有リポジトリ
bzr init-repo hoge/
bzr init hoge/
とかで開始
http://doc.bazaar.canonical.com/bzr.2.1/ja/user-guide/publishing_a_branch.html

* 指定したリビジョンへ戻す
bzr revertで最新コミットからの状態を取り消す(bzr statで修正が検地できる箇所をすべてなかったことにする)
bzr uncommit で最後のコミットを取り消す
bzr revert -r 19 で19番目のリビジョンへ全体を戻す

http://doc.bazaar.canonical.com/bzr.dev/ja/user-guide/undoing_mistakes.html

LWP::UserAgentを使ってみる

UserAgentとRefererを設定して診断君を取得する
参考リンク
http://search.cpan.org/~gaas/libwww-perl-5.836/lib/LWP/UserAgent.pm

#!/usr/local/bin/perl
use LWP::UserAgent;
use HTTP::Headers;
use feature qw(say);
$ua = LWP::UserAgent->new (
timeout => 5,
agent => 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)'
);


$ua->default_header(
'Referer' => "hoge",
'Accept-Language' => "no, en");
$res=$ua->get('http://taruo.net/e/');
if ($res->is_success){
say $res->code;
say $res->message;
say $res->content;
}

2010年6月18日金曜日

モニタの電源をsettermでオフに出来ない場合

vbetool というのがあるらしい
https://forums.ubuntulinux.jp/viewtopic.php?id=3477


vbetool dpms off
で画面消えた
普段はコンソールを使わないので/etc/init.d/rcの先頭に書いておいた

if [ "$1" = "2" ]
then
vbetool dpms off
fi

前回書いた方法でもできるけど場合によっては完全にきれないことがあるっぽい

2010年6月13日日曜日

hg diffが見難いのでvimdiffに変更する

.hgrcに以下を追記すればおk
[extdiff]
cmd.vimdiff = vimdiff

後はhg diffとやるところで
hg vimdiffと打ってみよう

RAID1を利用してディスクコピー

例えば/dev/hdd1の内容を丸々/dev/hdd2にコピーしたいと思った場合

1.縮退モードでRAID1を構成する
mdadm -C /dev/md0 -l1 -n2 /dev/hdd1 missing

2.コピー先のhdd2をアレイに追加
mdadm /dev/md0 -a /dev/hdd2

3.アレイの再構築が終わるまで待つ
cat /proc/mdstat

4.アレイを停止
mdadm -S /dev/md0

5.super-blockを削除
mdadm --zero-superblock /dev/hdd[12]

ディスクコピー完了

sources.listを編集してunstableパッケージと混在させる

http://mikilab.doshisha.ac.jp/dia/research/report/2005/0811/001/report20050811001.html
↑を参考にして/etc/apt/sources.listに下記2行を追加
deb http://ftp.jp.debian.org/debian/ sid main contrib non-free
deb-src http://ftp.jp.debian.org/debian/ sid main contrib non-free
/etc/apt/apt.conf.d/70debconfに下記を追加
APT::Default-Release "stable";
apt-getでunstableのパッケージをインストールするにはパッケージ名の後ろに
バージョンも明記するか、こんな感じで-tオプションとかあるらしい
apt-get install -s -t unstable hoge

で、aptitudeでやるには
パッケージ一覧を更新→パッケージを選択→下の方を良く見ると選べるようになってるのでそれ選択して+とか押す
↓の例だと1.5がstableで1.6がunstable

C/MigemoをMSVC 2010でコンパイルしてみる

vimにインストールするためMSVC 2010でコンパイルしてみた
まずは↓からMicrosoft Visual Studio Express C++をダウンロード&インストール
http://www.microsoft.com/japan/msdn/vstudio/express/
(ちなみにインストールするとメイリオフォントもインストールされる Firefoxとかだと文字がにじむサイトとかでるかも・・・)

そんでkaoriyaさんのHPから「ソースコード 1.3(予定) 開発版」をダウンロード解凍して cmigemo-1.3c\compile\vs2003のCMigemo.slnをMSVS 2010で開く→変換ウィザードでプロジェクトを変換
プロジェクトを開いたらReleaseに変更


そんでCMigemoを右クリック→リビルドすると cannot open include file 'afxres.h'というエラーが出るのでこんな感じで直す

修正前
#include "afxres.h"
修正後
#include
#define IDC_STATIC -1
あとはvs2003\CMigemo\Release\CMigemo.exeとvs2003\MigemoDLL\Release\migemo.dllを保存してvimにインストール

辞書ファイルはCygwinで作成するかkaoriyaさんの「バイナリ(DLL) 1.2 リリース版 for Windows 」をダウンロードしてもおk

ちなみにmigemo.vimは1.2版のを使った方が調子が良かった

2010年6月10日木曜日

胃の薬でよく効くやつは

セルベックスらしい

市販品だとセルベールというらしい

2010年6月6日日曜日

googleの左うざいに関して

FirefoxのUser Agent Switcherをインストール

UAをIE6に設定この状態で
IE6のUAはこれ
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
http://www.google.co.jp/
を開いてみよう


もとのGoogleが表示される
うざい左も表示されない

UAを変えなきゃいけないから実用性はなさそう