2007年02月24日
■[コラム] NASサーバにSubversionレポジトリを設置

玄箱
私は、家でNASサーバを使っております。そういうと、なんだかすごそうですが、単純に「玄箱」を使っているだけです。ご存じない方もいらっしゃるかもしれませんので簡単に説明いたしますと、次のような商品です。
- ファイルサーバ機能がついており、ネットワーク上に設置しておくとネットワーク内でファイルを共有できる(NAS機能)
- ハードディスクを中に入れて使う(別売)
- Linuxが入っており、必要に応じてカスタマイズ可能
- 基本的には電源は入れっぱなし
カスタマイズしようと思えばいくらでもできると思いますが、とりあえず設置してしまえばすぐに使えるという品物でもあります。現在、私は家の向かいの喫茶店に居ますが、持参したノートPCと家の無線LAN(電波が届いている)経由で玄箱のデータにアクセスができます。(だからお気に入りの喫茶店なのです。)
Subversionを使いたい
私は日常ではLinuxを使っておりますが、たまにWindowsを使うこともあります。ディスクの増設という意味に加え、両マシンでその時にファイルを共有したいなと思い、玄箱を購入したのですが、今ひとつ活用できていません。
私は(自称)技術者ですので、もう少しもっともらしい使い方をしてみたいと思いました。ファイル管理のレポジトリです。私は、ファイルバージョン管理にSubversionを使っています。(CVSから昨年乗り換えました。)
バージョン管理システム
ファイルバージョン管理は特に複数人で作業する場合には必須に近いものだと思いますが、一人でも十分にメリットがあります。最初は概念が分かりづらいという人もいますが、たいていはすぐに慣れてしまうようです。
基本的には作業は次のように行います。
- チェックアウト(レポジトリと呼ばれるファイル共有場所からファイル群(プロジェクト一式)をローカルの作業フォルダに取り出す)
- ローカルの作業フォルダでファイルを編集する
- コミット(あるいはチェックイン)(ローカルの変更箇所をレポジトリに反映させる)
なお、自分や他人がまったく別個にチェックアウトしてコミットすることもあります。その際のレポジトリの変更をローカルの作業フォルダに反映させる必要があります。これをアップデートと呼びます。現実的には、チェックアウトは各作業場所で一度きり行い、アップデートを行うことでリポジトリと同期させます。
これによって複数個所で作業を行っても、作業内容が容易に同期します。とはいえ、各ホストからリポジトリにアクセスできる必要はありますので、リポジトリはローカルネットワーク上に設置するのがもっとも好ましいのです。(必要ならばインターネット上でも。)
さて、ここまででsubversionのメリットは賢明な読者様にお分かりいただけたかと思います。すなわち何だか難しくてわからないけれど言葉がかっこいいので周囲を威嚇できるというものです。
Atzy「あ、ファイルコミットしておいたからアップデートしておいて。」
Aさん「新しいマシンなので、まだ何も設定してないんですよ。」
Atzy「じゃ、ソフトを入れてチェックアウトからやってよ。リポジトリは○○にあるよ。」
と、過剰にIT技術者っぽく陶酔可能な雰囲気がかもし出され、脳内アドレナリンが分泌されるわけでございます。やっていること大したことではなくて三歳児でも教えれば可能なことなのですが、知らない人から見れば「スーパーハッカーが米国防総省に侵入している!」と思うこともあるわけでその技術力に威圧されるわけです。
NAS上にリポジトリ
現在はリポジトリをLinuxマシン上に設置しています。もちろん家のLANのWindowsからでもアクセスできますが、Linuxが起動している必要があります。そこで常に起動しているNAS上でリポジトリを動かしたいなと思うわけです。
現在はLinux上にリポジトリがありますので、ネットワーク経由のアクセスの想定はされておらず、最初の方法を使っています。
三番目の方法は何となくそそられますが、Apacheから入れるところからはじめるので面倒になるかもしれません。
ファイルに直接アクセスするよりもsvnserveの方が何となくよさげです。なぜかといえば、そのファイルに直接アクセスできる(マウントする)必要がありません。その代わり、NASサーバ上でサーバを動作させる必要があります。また、現状ではLinuxでもWindowsでもNASファイルへの直接アクセスが可能です。(ファイルサーバとして使っていますから。)
当面はsvnserveも使わず運用することにして、必要になったら使うことにするということでよいかもしれません。さらに必要になったらApacheに組み込むこともできます。
今日の結論
というわけで、結論が出たようです。
環境破壊、教育の乱れ、失業問題等さまざまな問題が山積している。しかるに現政権・野党ともにそれらに対する解決策を見出すことができていない。世論の動向を踏まえ、国際社会の協力のもとに、諸問題に真摯に取り組みつつ、改革を推し進めるべきであろう。
- 3 http://d.hatena.ne.jp/keyword/玄箱
- 2 http://d.hatena.ne.jp/keyworddiary/Subversion
- 1 http://72.14.235.104/search?q=cache:IcLWinmI_asJ:r.hatena.ne.jp/keyword/ArrayList+Rogue+java&hl=ja&ct=clnk&cd=8&lr=lang_ja
- 1 http://blog.goo.ne.jp/search/search.php?status=select&tg=all&dc=10&dp=all&st=time&MT=玄箱&ts=all&da=all&act.search.x=30&act.search.y=17
- 1 http://d.hatena.ne.jp/keyworddiary/玄箱
- 1 http://d.hatena.ne.jp/keyworddiary/Subversion?week=20070218
- 1 http://kaccho-kuro.hobby-site.com:8080/freshreader/feedshowall.php
- 1 http://reader.livedoor.com/reader/
- 1 http://search.hatena.ne.jp/search?word=atzy&site=d.hatena.ne.jp
- 1 http://search.matome.jp/keyword/玄箱.html