[home]
[log in]


SVV

SVVとは?

ダウンロード

必要な物

準備

subversionの空のworking directoryが必要です。 環境変数SVV_WORKを、その空のdirectoryにしてください。

$ svn mkdir ~/work/newdir
$ svn commit ~/work/newdir
$ export SVV_WORK=~/work/newdir

例2

$ svnadmin create ~/newrepo
$ svn co file://.../newrepo ~/work
$ export SVV_WORK=~/work

使い方

ファイルをバージョン管理下に置く

$ svv add /etc/rc.conf
$ svv add /etc/X11/XF86Config
$ svv commit

ディレクトリを管理下に置く事はできません。

ファイルをアップデートする

(場合によっては、要root権限)

$ sudo svv update
$ sudo svv update -r 6 /etc/X11/XF86Config

差分をとる

$ svv diff
$ svv diff -r 7:8 /etc/rc.conf

ステータス表示

$ svv status

バージョン管理するのをやめる

$ svv remove /etc/rc.conf
$ svv commit

変更を破棄する

(場合によっては、要root権限)

$ sudo svv revert /etc/rc.conf

内部動作

subversion APIを使用しています。事あるごとに、/etc/*などのファイルをSVV_WORKにコピーし、そこに対してcommit, add, diffなどの処理を行っています。

例えば、/etc/rc.confをsvv addした場合、SVV_WORKには、以下の名称のファイルが作成されます。

$ ls $SVV_WORK
%2Fetc%2Frc.conf
%2Fetc%2Frc.conf.svv

".svv"ファイルには、ファイルののオーナー、パーミッションなどの情報が格納されています。

WORKDIRから/etc/などにファイルが書き戻されるのは、updateとrevertの時のみです。そのため、updateやrevertは、sudoするなどして実行してください。

ライセンス

New BSD Licenseです。

作った動機

CVSやsubversionで/etc/*を管理しようとすると、

といった点がめんどくさかったのです。

バージョン



Last Modified: 2007-10-15 Monday