閉じる

Subversionの導入

今までは開発機(Windows)に TortoiseSVNを入れて、リポジトリもローカルに作っていたのだけど、ネットワーク越しにも使おうと思い立って Slackware機でサーバを動かして Windows機はクライアントに徹するように作業した時のメモ。

リポジトリを作成。(Slackware)

2774-0.log
# svnadmin create /home/svn/a --fs-type fsfs

認証の設定。(Slackware)

2774-1.log
# vi /home/svn/a/conf/svnserve.conf
[general]
anon-access = read
auth-access = write
password-db = passwd
# vi /home/svn/a/conf/passwd
userX=passwordX

デーモンの起動。(Slackware)

2774-2.log
# svnserve -d

作業コピーの作成(チェックアウト)。(Windows/TortoiseSVN)

適当なディレクトリを掘って、コンテキストメニューから「SVN チェックアウト」を選択し、サーバに「svn://localhost:13690/home/svn/a」と。*1
「.svn」という管理データの含まれるディレクトリが出来上がると。

コミット。(Windows/TortoiseSVN)

チェックアウトしたディレクトリへ管理対象となるファイルをつっこみ、「TortoiseSVN – 追加」を行う。*2

一通り追加したら「SVN – コミット」を選択し、コメントの入力とコミットされるファイル一覧をチェック。

ユーザー名とパスワードを入力するとコミットが始まる。

後は適当なタイミングで変更をコミットしてゆくと。

別 PCで編集する場合は適当なディレクトリでチェックアウトを行い、任意にコミットを繰り返す。

チェックアウト済みのディレクトリを最新のバージョンに更新するにはコンテキストメニューから「SVN 更新」を行う。

コマンドラインからのチェックアウト(Slackware)

2774-3.log
$svn checkout svn://localhost/home/svn/a/ a/

TortoiseSVNでローカルに保持していたリポジトリを Slackware機に移動

TortoiseSVNのインストーラを起動してコマンドラインツールをインストールするように変更。

コマンドラインから現在のリポジトリデータをダンプ。

2774-4.log
> svnadmin dump "C:\Documents and Settings\USER\Local Settings\Application Data\subversion\Repository" >repo.dump

コマンドライからリポジトリデータをロード。

2774-5.log
# svnadmin create /home/svn/repositories/project
# svnadmin load /home/svn/repositories/project < repo.dump

svnserveによるルート指定

前述の svnserve起動方法ではファイルシステム上のパスをそのまま外部に見せていたけれど、それでは不都合がある時がある…かもしれない。

そんなときは以下のように起動すると外部からの「svn://server/a/」というアクセスが未指定時の「svn://server/home/svn/a」と同じなる…と言うことだと思う。

2774-6.log
#svnserve -d -r /home/svn/

*1 ポートフォワーダーを動かして Windows機の 13690を Slackware機の 3690へ飛ばしている。

*2 随時無視リストの編集なども行う。

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)