nDiki : CVS
CVS
スポンサード リンク
Related term
2004年8月26日 (木)
■ TortoiseCVS 1.8.0-RC4

開発中のPerl モジュールの Windows での作業(動作確認、PPM パッケージ化など)は、CVSクライアントとして使いやすかったこともあって
という組み合わせだったのだが、CVS作業のために Eclipse を起動するのも面倒なので TortoiseCVS を入れてみた。
使い勝手はTortoiseSVNとほぼ同じ。アイコンオーバーレイ表示がちとしょぼい(管理下にあるファイルには緑色のもやがかかる)。 Pagent によるパスフレーズ入力省略方法もTortoiseSVNの方法と同じ (今回は Subversion リポジトリと CVS リポジトリが同じホストにあるので特に何も設定する必要なく成功)。
- PPM とか (2003-10-01)
- 私的10大ニュース2004 [ comp ] (2004-12-31)
- EPIC (2003-12-02)
- TortoiseSVN と svn+ssh (2004-07-26)
- 普通の人向けに svnserve を立ち上げるか (2005-07-26)
2004年9月17日 (金)
■ Linux kernel を 2.6.8 に

涼しくなってきてエアコンをかける機会も減ってきた。 そうすると、ThinkPad X31 のファンの音が気になってくる。
やはりCPU管理を行って無駄に温度が上がらないようにした方が良さそうだ。 cpufreqdあたりか。
今まで kernel 2.4 を使っていたが、これを機会に 2.6 に上げておく。 ビルド手順は今まで通り。
設定メニューの構成が結構かわったのか。時代にとりのこされているな。
しかし、MADWIFI が×。 CVSサーバにつながらないので、最新のソースコードを取得できない。 5月9日の時点のではコンパイルが通らない(kernel 2.6.8 用のパッチもあたらない)。
[ Debian GNU/Linux ]
- Debian GNU/Linux sid 環境を新 HDD へ (2006-07-29)
- Debian Linux kernel 2.6.23 をビルドする。 (2007-12-23)
- Linux kernel 2.6.8 + MADWIFI (2004-09-20)
- Debian Linux kernel 2.6.26 にアップデート (2009-02-07)
- ThinkPad X31 と Linux kernel 2.6 (2006-02-22)
2004年9月20日 (月)
■ Linux kernel 2.6.8 + MADWIFI

SourceForge.netのCVSサーバが復旧したようなので、早速 MADWIFI ドライバをビルドする。
@ debパッケージ化
してみる。/etc/apt/sources.list に
# madwifi # http://www.marlow.dk/site.php/tech/madwifi deb-src ftp://debian.marlow.dk/ sid madwifi
を追加して
su apt-get update apt-get build-dep madwifi
として必要なモジュールをインストール。
次に MADWIFI の source パッケージとツールの deb を作成しインストール。
mkdir /tmp/madwifi cd /tmp/madwifi apt-get source madwifi cd madwifi-1.4 fakeroot dpkg-buildpackage su dpkg -i madwifi-source_20040920_all.deb dpkg -i madwifi-tools_20040920_i386.deb
9月17日に kernel をビルドしたソースツリーで madwifi をビルドする。 kernel 2.6.8 用の MADWIFI 非公式パッチもあてておく。
cd /tmp wget http://users.informatik.haw-hamburg.de/~gropp_v/madwifi-2.6.8_and_-mm-040821.patch.bz2 bunzip2 madwifi-2.6.8_and_-mm-040821.patch.bz2 cd /usr/local/src/linux tar zxvf /usr/src/madwifi.tar.gz cd modules/madwifi patch -p1 < /tmp/madwifi-2.6.8_and_-mm-040821.patch cd /usr/local/src/linux/kernel-source-2.6.8 $MODULE_LOC=/usr/local/src/linux/modules fakeroot make-kpkg --added-modules madwifi modules_image
失敗。パッケージ構築時にこけている感じ。
@ ということで普通にビルド
cd /tmp wget http://users.informatik.haw-hamburg.de/~gropp_v/madwifi-2.6.8_and_-mm-040821.patch.bz2 bunzip2 madwifi-2.6.8_and_-mm-040821.patch.bz2 cd /usr/local/src/sf cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/madwifi co madwifi cd madwifi patch -p1 < /tmp/madwifi-2.6.8_and_-mm-040821.patch make su make install modprobe -a ath_pci
ThinkPad X31 の無線 LAN LED も点灯するようになった。
@ 大きなファイルの転送は駄目
RTSを設定してみたりもしたが、駄目。 Webを普通に巡回する程度なら問題ないが、POP3 や rsync などは駄目。
- Debian GNU/Linux sid 環境を新 HDD へ (2006-07-29)
- Linux kernel を 2.6.8 に (2004-09-17)
- Debian Linux kernel 2.6.15 ビルド (2006-02-23)
- ThinkPad X31 と Linux kernel 2.6 (2006-02-22)
- Debian Linux kernel 2.6.23 をビルドする。 (2007-12-23)
2004年12月31日 (金)
■私的10大ニュース2004 [ comp ]

@ cool programs
- pdumpfs
- Memcached
- 簡単・高速なキャッシュシステム。使える。
- Firefox
- Subversion
- 将来的に CVS から移行する事を考えて試験的に導入。良い。Windows でも TortoiseSVN のおかげで簡単に利用できる(CVS にも TortoiseCVS が出て便利になった)。
- 影舞
- 今年前半のプロジェクトで活躍。
- PAR
- NSIS
- Template Toolkit
- Webアプリケーション開発プロジェクトで採用。www.naney.org の静的コンテンツの生成でも使い始めた。
@ Palm OS 生活復活
PEG-TJ25を購入し、Palm OS 生活復活。 最初はおもちゃのつもりで買ったのだが、プロジェクトマネジメントなどにシフトした仕事のスケジュール管理などで大活躍。
PDA 市場の明るい話はあまり聞かないが、末長く製品が出て続けて欲しい。
- Module::Build でソースパッケージング (2005-08-24)
- DAR で差分/増分バックアップ (2005-04-02)
- NSIS でインストーラを作ってみる。 (2004-08-11)
- クラッシュは突然に - DAR の使用を再検討 (2009-01-06)
- PAR (2004-07-19)
2005年2月17日 (木)
■ 別の人の作業ファイルをCVSにマージ

都合によってCVS リポジトリにアクセスできないところにいるチームメンバから、変更した作業ファイルを送ってもらった。
さて。
どうするか。
@ 変更元リビジョンがわかっているもの
ファイルに $Id$ などが含まれていてどのリビジョンに対して変更したのかが簡単にわかるものは diff をとって patch をあてるか。 自分の作業ディレクトリとは別にもう一つ作業ディレクトリをチェックアウトして、そこに変更されている作業ファイルを上書きコピー。
cvs diff -r リビジョン -au ファイル名 | patch /path/to/my/working/dir/ファイル名
で自分の作業ファイルにマージ。
@ 変更元リビジョンがわかっていないもの
とりあえず HEAD と diff してみて問題なさそうならそのままマージ。
やっぱりリビジョン番号を埋め込んでおいた方が便利やね。
- TortoiseCVS 1.8.0-RC4 (2004-08-26)
- Cache::Memcached 1.13 の Perl 5.005_03 対応 (2004-06-05)
- パッチ作り (2004-06-05)
- cvs2svn (2004-02-24)
- vc-svn.el を使いたいので Emacs 22 に移行することにした (2006-03-25)
2005年8月24日 (水)
■ Module::Build でソースパッケージング

@ ExtUtils::MakeMaker
私が Perl が好きな理由の一つに、標準でExtUtils::MakeMakerという Makefile ジェネレータがついているところである。これを使って Makefile.PL を書くと
perl Makefile.PL make manifest make make test make dist
で <pacakge>-<versionno>.tar.gz というソースパッケージを作ることができ、
tar zxvf <pacakge>-<versionno>.tar.gz cd <pacakge>-<versionno> perl Makefile.PL make make test make install
という手順でインストールする事ができるようになる。 パッケージの作り方が確立されているので、容易に新しいパッケージを開発しはじめられる。
逆に Java でプログラムを書くのが億劫なのは、このあたりの準備が面倒だからである。 Ant を使っても結局ここら辺自分でやらなければならないし。
@ ちょっとしたアーカイブの作成
ちょっとしたパッケージを作りたいと思うことは良くある。 例えばいくつかのデータファイルと、READMEファイルなんかをひとまとめにしてアーカイブにするとか。
本当にちょっとしたであれば、手動でアーカイブすれば良いのだが、
- アーカイブしたいファイル群がバージョン管理下にあって、CVS ディレクトリや .svn ディレクトリがある (除外してアーカイブする必要がある)
- 同じディレクトリにある、作業用のファイルはアーカイブしたくない (除外してアーカイブする必要がある)
- アーカイブする前に、チェック用のリグレッションテスト一式を走らせたい (リグレッションテストをかけられるようにする)
- UNIX でも Windows でもアーカイブ化できるようにしたい。
あたりを考慮しなければならない時は面倒くさくなってくる。
自動化としては
- シェルスクリプト/バッチファイルを書く
- Makefile を書く
- GNU Autotools を使う
あたりがぱっと思い浮かぶ。 しかし、最初の2つは毎回同じようなものを書くのが面倒だし保守もしにくい。 GNU Autotools はちょっとごっつすぎだし、Windows での環境構築も面倒。
@ ExtUtils::MakeMaker の欠点
ということで最初は ExtUtils::MakeMaker を使うという線で考えてみた。 もともと Perl モジュール用で汎用用途にはちょっと邪魔な振舞いもあるが、使えないことはないと思う。 しかし make (GNU Make あるいは nmake など) に依存しているという欠点がある。
@ Module::Build で
ということで ExtUtils::MakeMaker の代替である Module::Build ベースで汎用用途に使えないか検討してみた。こちらは pure Perl で make を必要としない。
Module::Build も Perl モジュールビルドにあわせた振舞いがあるものの、ちょっとカスタマイズすれば使えそうだ。 で、いろいろいじった結果、次のような感じにすると使いやすそうだ。
use Module::Build;
my $class = Module::Build
->subclass(class => 'NonmoduleBuilder',
code => q{
# Don't make blib
sub ACTION_code {};
# Don't make blib
sub ACTION_docs {};
# Don't make META.yml
sub ACTION_distmeta {
# no warning on ACTION_distdir
$_[0]->{metafile} = 'MANIFEST';
};
# Don't add MEATA.yml to MANIFEST
sub ACTION_manifest {
$_[0]->{metafile} = 'MANIFEST',
$_[0]->SUPER::ACTION_manifest(@_);
};
});
# Set your archive name and version.
$class->new(dist_name => 'mypackage',
dist_version => '1.0.2',
)->create_build_script;
カスタマイズした部分は以下(Module::Build 0.26 で動作確認)。
- Perl モジュールビルドに特有の blib ディレクトリを作らないようにする。
- META.yml を生成しないようにし、アーカイブに含まれないようにする。
上記のようなファイルを Build.PL という名前で作っておけば
perl Build.PL ./Build manifest ./Build ./Build test ./Build dist
等として、アーカイブ作成が容易にできるようになる。
しばらくこの方法でいろいろ試してみることにしてみよう。
- SCons は GNU Autotools のかわりになるか (2005-04-20)
- ActivePerl で Ming (2005-02-23)
- nmake で毎回 pl2bat されるのを何とかしたい (2004-11-25)
- 私的10大ニュース2004 [ comp ] (2004-12-31)
- WiKicker の Makefile.PL を Module::Inst... (2006-02-10)
2006年2月18日 (土)
■ Mozex を使って Firefox 1.5.0.1 の textarea の内容を Emacs で編集する

uim、uim-skk と Firefox のキーバインディングをきちんと設定していないせいか、どうも textarea での日本語編集にストレスを感じる。 Wiki 等で textarea での編集作業も少なくないので、Mozex を使って Emacs で編集できるように設定しておくことにした。
より降旗氏が公開されている Firefox 1.5以降用 mozex 1.07.1 日本語 version (1.5.0.1 インストール対応)を Firefox にインストール。
そういえば今まで emacsclient も使ったことがなかったな。Emacs 立ち上げっぱなしのくせに。まずは起動している Emacs 上で M-x server-start (.emacs で (server-start))しておく。
Mozex の設定で
Directory for temporary files: /tmp Textareas: /usr/bin/emacsclient %t
を設定。自分の環境だと Commands は絶対パスでないとうまく呼べないようだ。
これで textarea 上で右クリックし、[mozex] -> [Edit Textarea] で開いている Emacs 上に Textarea の内容が新しいバッファで開く。 編集して保存して C-x # し、Web ブラウザ側に戻ると反映される。
便利便利。
ところで Emacs server と gnuserv とどっちがいいのかな? 特に設定なしでどちらも使える。 何も設定していない状態だと gnuserv の方は新しい frame が開いて好みじゃないので、とりあえずは Emacs server を使うことにする。
ついでに EDITOR 環境変数も emacsclient に直しておこう。 これで CVS、Subversion のコミット時に新しい Emacs を起動しなくてよくなる。
とっとと設定しておけば良かった。
- skkinput がよく落ちるので uim-skk に乗り換え (2005-09-22)
- vc-svn.el / psvn.el (2004-07-30)
- Linux で使えるデスクトップ検索ツール Beagle でローカルファイ... (2006-08-08)
- X-Deep/32 Xサーバ (2005-03-30)
- Linux 母艦ノート PC を使わずに仕事ができるかチャレンジ (2007-08-20)
2006年3月25日 (土)
■ vc-svn.el を使いたいので Emacs 22 に移行することにした

Subversion は Emacs の VC バックエンド vc-svn.el があるので CVS の時と同様気軽に使えていたのだが、かなり前から Debian の subversion パッケージから取り除かれて使えなくなってしまっていた。
vc-svn.el は Emacs 22 に含まれるらしく、Debian だと emacs-snapshot(-common と -el)に含まれている。 やっぱり VC で使えないと不便なので、これを機に Emacs 22 に移行することにした。
後生大事に Emacs 19 / 20 / 21 それぞれ用に emacs-major-version で設定を切り分けている .emacs のコードがあったりするので、その部分は動作確認しつつ Emacs 22 用の設定を作成する。
Emacs 21 とちょっと設定を変える必要がある部分があったけれど、おおむね問題なく動いているようだ。
問題なさそうなので update-alternatives で普段使いに設定しておこう。
- vc-svn.el / psvn.el (2004-07-30)
- cvs2svn (2004-02-24)
- Emacs 22 だと howm に色がつかないので Emacs 21 に戻す (2006-04-01)
- 今日のさえずり - 京都の小学校のコンピュータ室にいったら、Squeak が (2008-03-06)
- connect.c を使って SOCKS サーバ経由で社内サーバへ SSH 接続 (2007-01-06)
2006年12月13日 (水)
■ wxPerl PPM パッケージ

PAR リポジトリでいろいろ遊べそうなので、GUI 作成に wxPerl の方も久しびりにまた使おうかなと。
ただ wxPerl の本家が配布しているビルド済み PPM パッケージは、いまだに Wx 0.26 + wxWidgets 2.6.2 だったりして使う気になれない。 かといって、自分でビルドするのも結構手間だし。
で探していたところ Wx::Perl::Packager の開発者が、自身のサイトで PPM パッケージを配布しているのを発見。
最新のパッケージがあるのが嬉しい。
というか12月12日 にリリースされた wxWidgets 2.8.0 と、 CPAN にもまだない CVS 版 Wx (次の 0.66 のためのスナップショット)が、同じ12月12日に公開されているという早さ。
これがあれば、最新の機能が堪能できそうだ。
- 私的10大ニュース2004 [ comp ] (2004-12-31)
- Wx::ActiveX をビルド (2004-08-27)
- wxPerl + ActivePerl 5.6.1 build 638 (2004-07-21)
- TrueCrypt 6.1a を Debian GNU/Linux sid に (2009-02-02)
- bundle を作成して Perl モジュールをまとめてインストール。 (2004-10-21)
2007年1月6日 (土)
■ connect.c を使って SOCKS サーバ経由で社内サーバへ SSH 接続

以前社外から社内 Web サイトへのアクセスは autossh + FoxyProxy を使って SOCKS 経由で直接できるように設定した (記事)。 また Unison や Subversion もそれぞれ SSH port forwarding 経由で直接アクセスできるようにしてある (Unison の記事、Subversion の記事)。
しかし社外から社内サーバへの SSH 接続(やファイル転送)は、以前として一旦中継ホストに接続(転送)してから再度接続(転送)していて面倒であった。
調べたところ Shun-ichi GOTO氏の SSH プロキシコマンド connect.c を使うと SOCKS サーバ経由で直接接続できるようなので設定してみた。
[クライアント:8090] -- SOCKS -- [ゲートウェイ] -- [社内サーバ]
gw.example.com 192.168.1.x
@ インストール
Debian なので apt-get で。
apt-get install connect-proxy
@ SSH の設定
~/.ssh/config に以下の行を追加。
Host 192.168.1.* ProxyCommand /usr/bin/connect-proxy -S localhost:8090 %h %p
192.168.1.* に接続する際は、connect-proxy を使ってローカルホストの 8090 ポートの SOCKS を通るようにする設定。
@ SSH を SOCKS サーバにする
autossh を使って SSH で SOCKS サーバを立てる
autossh -N -f -D8090 gw.example.com
これで準備 OK。
@ 使ってみる
@ SSH 接続
ssh 192.168.1.x
で接続を確認。
@ Konqueror (KDE)
fish://192.168.1.x/
で直接ブラウズ、読み書き可能なことを確認。
@ Unison
普通に 192.168.1.x と同期できることを確認。
@ CVS
普通に 192.168.1.x 上のリポジトリに対して cvs update できることを確認
@ Subversion
普通に 192.168.1.x 上のリポジトリに対して svn update をかけるとアップデートし終わって最後に
FATAL: output (local) failed, errno=32
というエラーがでる。
@ 便利
Subversion だけちょっと気がかりだれど、その他はうまく行っている感じ。
これでかなり手軽に接続、転送できるようになった。 便利、便利。
@ 追記 (2009年2月23日)
一時的に connect.c を通らないで直接接続する際には 'ssh -o ProxyCommand=none' とする。
例: SVN_SSH='ssh -o ProxyCommand=none' svn update
- FoxyProxy と autossh で社内 Web ページを閲覧 (2006-06-03)
- OpenSSH for Windows (2004-08-05)
- Debian Linux kernel 2.6.26 にアップデート (2009-02-07)
- Subversion で SSH port forwarding 経由での... (2006-06-29)
- Subversion で大文字・小文字のみ違うファイル名へ変更 (2004-08-02)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 1.046698s / load averages: 0.12, 0.16, 0.16
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)




◇ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。