[HOME]: [Mac OS X]: [MacPython]: [Emacs]: [生存報告記]: [MacEmacs JP Project]: [NTEmacs JP Project]:

概要

Subversion は CVSに換る事、および最近の状況を組み込む事を目標としたバージョン管理システム。

subversion 1.0.1 を元に記述する。またApacheと連携とかは後まわしにして、個人環境で利用する方法を主にメモする。

とにかく楽に利用しようというのが基本です。

URL

http://subversion.tigris.org/

インストール

Finkの利用

Fink でインストールするのが楽

http://fink.sourceforge.net/pdb/package.php/svn

http://fink.sourceforge.net/pdb/package.php/svn-ssl

もしネットワーク越しに利用するならsvn-sslが良い。

fink selfupdate-rsync
fink install svn-ssl
fink install svn-client-ssl

パッケージの選択によっては、いろんな物がインストールされます。

Can't resolve dependency "system-java14-dev"

といわれるかもしれない。(BuildDependsの記述あるのでJavaが1.4.2なのにDev Pacageいれてないと出るはずです)

https://connect.apple.com/

いって Java 1.4.2 Developer Packageを取得してください。これないとだめです。

ソースインストール

ソースからインストールする場合は

http://subversion.tigris.org/project_packages.html

からtarballを取得します。

以下の物が必要です。Finkパッケージ出るまで手でコンパイルしてましたが、やめました。。

設定

環境変数

svn --help

してみてください。

当然PATHが設定されていないと起動しません。あと、まったく設定しないで起動すると以下のエラーがでると思います。

svn: error: cannot set LC_CTYPE locale
svn: error: environment variable LC_ALL is en

このエラーがでてるってことはfinkでもPerlのエラーがでてると思います。

とりあえず以下に設定してください。

export LC_CTYPE=C
export LC_ALL=C

だたしこの設定だと日本語コメント等が書けません。日本語の問題はsvnコマンドにencodingオプションの付加、またはconfigのlog-encodingを付加して回避します。

利用方法

ここでは devproject がレポジトリ名です。通常はプロジェクト単位でレポジトリを作成するのがおすすめです。しかし、個人で利用するなら自分の開発する物をすべて単一プロジェクトとしてしまうってもかまいません。

/Users/sakito は ホームディレクトリです。適時読み変えてください。

$ mkdir -p ~/var/svn/
$ svnadmin create /Users/sakito/var/svn/devproject
$ svn mkdir -m "initial setup" file:///Users/sakito/var/svn/devproject/trunk
$ svn mkdir -m "initial setup" file:///Users/sakito/var/svn/devproject/tags
$ svn mkdir -m "initial setup" file:///Users/sakito/var/svn/devproject/branches
$ cd ~/dev
$ ls
python java scheme <略>...
$ svn co file:///Users/sakito/var/svn/devproject/trunk .
$ svn add python java scheme
$ svn ci -m "start loading it in"

上記は ~/dev 内の物を登録しています。これはdev内の物すべてを管理化に置きたくなかったためにやっています。通常は以下のようにします。

$ svn import -m "initial setup" /Users/sakito/dev file:///Users/sakito/var/svn/devproject/trunk

無視パターンの設定

.classとか.pycとかを管理化におきたくないという要求がある場合に設定します。

config

$HOME/.subversion/configを設定します。

[miscellany]
global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store *.class *.pyc 

tag

svn copy -m 'tag applescript-mode-0.0' file:///Users/sakito/var/svn/devproject/trunk/applescript-mode/ \
       file:///Users/sakito/var/svn/devproject/tags/applescript-mode-0.0

確認

svn ls file:///Users/sakito/var/svn/devproject/tags/

トラブルシュート

Can't recode stringが出る

localeを適切に設定してください。

Mac OS Xで利用可能なlocaleは/usr/share/locale/以下を参照してください。

unable to convert to/from UTF-8が出る

入力のエンコーディングが不正です。

Tools

svk

http://svk.elixus.org/

参考サイト

http://xsteve.nit.at/prg/vc_svn/svn.txt

Subversion: 公式ガイド

Subversion によるバージョン管理

Subversion-jpメーリングリスト

subversion不徹底入門

Subversionで管理せよ (draft)

Subversion - Saisse's Wiki

http://terai.s55.xrea.com/?Subversion

http://www.imasy.or.jp/~tai/wiki/index.php?UsingSubversion

subversion のインストールと設定

Subversionでバージョン管理

http://slashdot.jp/article.pl?sid=04/02/23/154210

Tools

http://dark.clansoft.dk/~mbn/svnservice/

Mac OS Xでの利用関係

http://www.pycs.net/bbum/2004/2/24/#200402241

http://www.pycs.net/bbum/2004/2/28/#200402281


CategoryPrograming CategoryMac