すごく簡単なSubversionの使いかた

最近やっとSubversionを使い出したので、すごく簡単なメモを。SSHとかめんどくさそうなことは一切しません。
細かいことは、bluegate.org - このウェブサイトは販売用です! -&nbspbluegate リソースおよび情報を参照のこと。

インストール

# emerge subversion

おわり。

設定と起動

レポジトリのルートディレクトリを作成しておくと、何かと便利そうなので作ってみる。

# mkdir -p /repository/svn

つぎに、パソコン起動時にsvnserve(Subversionのサーバ)を起動するようにする。

# rc-update add svnserve default

このままだと、レポジトリのルートディレクトリがさっき作成したディレクトリにならないので、設定ファイルを書き直す。設定ファイルは/etc/conf.d/svnserveにある。

# The commented variables in this file are the defaults that are used
# in the init-script.  You don't need to uncomment them except to
# customize them to different values.

# Options for svnserve
SVNSERVE_OPTS="--root=/repository/svn"

これでOK。これだとパソコンを再起動しないとサーバが起動しないので、我慢できない人は普通にデーモンを立ち上げる。

# /usr/bin/svnserve --foreground --daemon --root=/repository/svn

レポジトリの作成と設定

レポジトリの作成にはsvnadminというコマンドを作る。

# svnadmin create /repository/svn/reposname

つぎはレポジトリの設定を行う。設定ファイルは、reposname/confに用意されている。


とりあえず、svnserve.confから書き換える。

[general]
auth-access = write
password-db = passwd

個人で使うだけなら、とりあえずこの2行をコメントアウトしておけば良いかと。


つぎにpasswdを書き換える。

[users]
username = userpassword

簡単なもんです。
これで簡単な設定は終わり。

EclipseからSubversionを使う

EclipseからSubversionを使うには,Subversiveプラグインがおすすめ。詳しい使いかたは参照先を。
FAQにも書いてありますが、SVNKitのほうが良いかもしれません。エラー表示が詳しくて素敵です。


以上、メモ終わり。

mp3とかID3とか

家のPCで作成したMP3をフラッシュメモリに300MBほどぶち込み,研究室のPCに入れて聴いています.


今まではネットに落ちてるmp3をRhythmboxで聴いていたけれど,Windowsで作成したmp3はID3タグが文字化けしちゃって,しかも変更方法もよくわからんのでRhythmbox封印.iTunesに慣れてると,このあたりはすごく不満.


で,音楽プレイヤーを新しく導入.
Audacious
Winampライクで使い易く,ID3タグもそれなりに編集しやすい.


普通にID3タグだけ編集するソフトは無いかしらとportageを検索すると,id3edというのがあったが,これはCUIでしか使えず,ちょっと不満.GUIでガーっと編集できるヤツは無いかしら.もう少し探してみることにする.

gemri

こんなんあったとは,知らなかった.gem_serverを走らそうと思ったら,たまたま見かけた.こっそりインストールされるようなので,知らない人もいるのでは*1
何をするものかって,そりゃもう読んで字の如く,rubygemsでインストールしたgemのドキュメントを,riで見ようってだけ.内部的にもriが走ってるようです.


こんな感じにつかうだけ.

$ gemri ActiveRecord::Base 

内容はgem_serverのものとかわらないけれど,「あんなのを常時走らせるのは勘弁」とか,「いちいちブラウザなんかでヘルプ見る気にならない」っていうCUI人間にはぴったりだと思います.

*1:Gentooでemerge rubygemsで入れた場合,入ってたのでどの環境でも入ってると思う

固有値問題

研究室の教授に借してもらった.
数学の時間が始まる...

FizzBuzz問題ゴルフ

コードゴルフRubyはつくづく不利だなと思った.

  • 0は真
  • 空文字列は真

これだけで結構増えるよね.
で,精一杯頑張ってみた結果.

puts (1..100).map{|n|(s=(n%3<1 ?'Fizz':'')+(n%5<1 ?'Buzz':''))=~/^$/ ? n:s}

シンタックスハイライト,バグってるし.
wcの結果.

$ wc fizbuz.rb
 1  6 76 fizbuz.rb

今のところ,これが限界.

使ったテク

  • %の結果は0以上という性質を使用して,==0のところを<1にして一文字節約
  • 空文字列の判定は.empty?よりも=~/^$/のほうが一文字節約できる

もっと節約できるかしら