FC3(サーバ)とMac OSX(クライアント) でsubversion

Powerbookがしばしば調子が悪くなったり、ローカルPCに色々とファイルを溜め込んでおくのが不安になる昨今。プライベートで作成しているスクリプトや、HTMLなどもこの際、subversinで管理するように、Mac OSXで環境を構築したメモ。subversion のサーバは、レンタルサーバで借りているFedoraCore3で運用。

Subversion サーバの設定

サーバ側(FedoraCore3)で、subversion用のユーザとリポジトリを用意。subversionの管理用に、svnuserなどの専用ユーザをつくる。svnuserの権限は最小限に設定。そのあとに、svnuserでリポジトリを作成。

server:$ useradd svnuser
server:$ passwd svnuser

server:$ su svnuser
server:$ mkdir /home/svnuser/repos
server:$ svnadmin create /home/svnuser/repos

subversionで管理するソースコードをwgetやftpなどで取得。/home/svnuser/download/myapp に配置。そのディレクトリで、ソースファイルをsubversionにimportする。

server:$ pwd
/home/svnuser/download/myapp

server:$ svn import -m "first import" . file:///home/svnuser/repos/myapp/trunk

ワークディレクトリでチェックアウトしてみる。

server:$ cd /home/svnuser/workspace
server:$ svn co file:///home/svn/repos/myapp/trunk myapp

先ほどimportしたファイルが、問題なくworkspaceにチェックアウトされた。/home/svnuser/download/myapp はもう削除してもOK。

クライアントの設定

クライアント環境である、Mac OSXにもsubversionをインストール。こちらのページでバイナリPkgが公開されています。

Martin Ott

インストールが完了したら、OSXのターミナルを開く。開発用の作業ディレクトリ(workspace)で以下のコマンドでチェックアウト。www.myserver.jp やユーザ名、アプリケーション名などは、随時、自分の環境にあわせて変更してください。

local: $ svn checkout svn+ssh://svnuser@www.myserver.jp/home/svnuser/repos/myapp/trunk myapp

ソースコードがチェックアウトされるので、こちらを開発修正。

svnで利用するデフォルトエディタを指定するには、

/Users/myname/.bash_profile
に以下を追加
export SVN_EDITOR=/usr/bin/emacs

subversionで管理したくないファイルもあるので、それを除外するには、そのファイルがあるディレクトリで

local: $ svn propedit svn:ignore .

先ほど設定したエディタが起動するので、ファイル名を一行ごと記述する。保存してcommitすれば反映。ただし、すでにレポジトリに登録済みのファイルは、一度 svn delete して削除しないとダメ。除外されているファイルなど、プロパティを確認するには

local: $ svn proplist -v

その他のコマンド。

* コミット
local: $ svn commit -m "write some message about this commit"

* 現在のディレクトリの状況をみる
$ svn st