カテゴリーアーカイブ: subversion

svnadmin create /var/svn/testrails
cat <<’EOF’ > /var/svn/testrails/hooks/pre-revprop-change
#!/bin/sh
exit 0
EOF

chmod +x /var/svn/testrails/hooks/pre-revprop-change
svnsync init file:///var/svn/testrails svn+ssh://admin@code.twintail.tv/home/svn/testrails
svnsync sync file:///var/svn/testrails

sshを使っているので毎回パスワード聞かれる。鍵を作ってしまうか、httpで公開REPOにするかの判断。

retorspectivaにsvnsyncさせるには鍵認証にしてsyncコマンド送らせるか、設定のオプションにパスワード直書きするか。

迷う。

sourceforge.netなどのようにソースファイルとプロジェクトを管理出来るツール。
http://sourceforge.net/
バグ管理・進捗管理・ソースファイル管理・情報共有(wiki)ができる。
GForgeという派生ツールのようなものもあるが、余力があれば次回インストールのメモをとりたいと思ってます。
http://gforge.org/

http://discypus.jp/wiki/?%A5%BD%A5%D5%A5%C8/Bug%20Tracking/trac
上記の情報を頼りにすすめました。

本家 Edgewall Software
http://trac.edgewall.org/
日本語 インタアクト株式会社
http://www.i-act.co.jp/project/products/products.html
どちらにもデモがあるので導入に必要な要件があるか確認出来ます。

Python
Subversion
SQLite
pysqlite
ClearSilver

Pythonのバージョンが2.3以上推奨なので、Pythonのインストールから。
システム標準のPythonは何かとアップデートに問題があるので、prefixをつけてインストール。
http://www.python.jp/Zope/

./configure –prefix=[python-path]
make
make install

Subversionのインストール
前回インストールしたので割愛
http://blog.twintail.tv/2005/09/26/48/

SQLiteのインストール
http://www.sqlite.org/

./configure –prefix=[sqlite-path]
make
make install

pysqliteのインストール
http://initd.org/tracker/pysqlite/wiki

[python-path]/bin/python setup.py build
[python-path]/bin/python setup.py install

ClearSilverのインストール
http://www.clearsilver.net/downloads/

./configure –disable-perl

それぞれインストールしたディレクトリのパスを通しておく。

Tracをソースファイルからインストール
Debianだとapt-getでインストールできるようだが、今回はRedHatなのでソースからです。

ここからは同封されているINSTALLをみれば大体の流れがわかると思います。

ファイル展開

unzip trac-x.x.x.zip
cd trac-x.x.x

インストール

[python-path]/bin/python setup.py install

Tracを使うためのディレクトリの設定

mkdir [path]/sample
cd [path]/sample
[python-path]/bin/python [trac-path]/trac-admin sample initenv

Project name [My Project]> [Enter]
Database connection string [sqlite:db/trac.db]> [Enter]
Path to repository [/var/svn/test]> [svn-repository-path]
Templates directory [[python-path]/share/trac/template]> [Enter]

スタンドアローンで動かす場合

[trac-path]/tracd –port 8080 [path]/sample

http://xxxxxx:8080/sample

CGIとして動かす場合
apacheのhttpd.confを設定

ScriptAlias /trac/sample /usr/share/trac/cgi-bin/trac.cgi
<Location “/trac/sample”>
SetEnv TRAC_ENV “[path]/sample”
</Location>

http://xxxxxx/trac/sample

apache,mod_python経由で動かすのが一番パフォーマンスがよいらしいけど、うまいこと動かなかったのでCGIとして稼働させました。

こんな感じで出来た。
つーかTracインストールするための準備の方が面倒。
あまり古いOSではやらない方がいいかも。

これまでOSXではsvnXというフロントエンドを使ってましたが、OSXでTortoiseSVNのようにSubversionを使えるようにします。
(Finderにオーバーレイアイコンが付いたり、色々出来るようになる。)
既にSubversion1.3.0が入っている状態で実行してます。

※不安定っぽいので要注意

http://scplugin.tigris.org/

最新バージョンをsvnで取得

svn –username=guest http://scplugin.tigris.org/svn/scplugin/trunk/

ブラウザからなら、
http://guest:guest@scplugin.tigris.org/svn/scplugin/trunk

INSTALLATION.txtを読むが、ほぼ確実に項目1でこける。
mac用のライブラリを手動ビルドする必要があるみたい。

cd svn-mac-build
make

tar.gzのアーカイブをダウンロードしてくるみたいだけど、ダウンロードの途中でよく止まる。
根気よく再チャレンジ。

ダウンロード後、チェックサムで止まる。
なんで?

とりあえず、Makefileに書いてあるコマンドを手動で実行。

./build_01_db_mac
./build_03_expat_mac
./build_04_svn_mac
chmod u+w inst/bin/*

以下、INSTALLATION.txtの指示通りに実行。

2、SCPlugin.xcodeを開く
3、ALLを選んで実行
4、ビルドされる。。。
5、buildディレクトリを開く
6、SCFinderPlugin.pluginを~/Library/Contextual Menu Items/にコピー
7、Finderを再起動

環境設定からSCPluginを選択して、Enable Finder Integrationにチェック。
Subversion Executableでsvnのパスを選択。

なんかアイコンが変わらないのでOSごと再起動。

きたよー!なかなかいいんじゃね?

なんかもうめんどくさい!ってなったら、ディスクイメージがあるのでそれを使用する。(SCPlugin_b269.dmg)
それもマンドクセなら、おとなしくsvnXで我慢。
つーかもうターミナルからコマンド打ってください。

redhat9で実行
apache2でWebDAVを使えるようにしておく
apache2が最新のBerkeleyDB(libdb)を参照しているか確認
(https://~で使いたければ設定しておく必要があるが、svn+ssh://~で使うのであれば必要ない)

ldd /usr/local/apache2/bin/httpd

RPMで古いバージョンが入っていたので削除する

rpm -e subversion-0.27.0-2

プロジェクトからソースコードを取得
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74
http://subversion.tigris.org/downloads/subversion-1.2.3.tar.gz

解凍してコンパイル

tar zxvf subversion-1.2.3.tar.gz
cd subversion-1.2.3
./configure --with-apxs=/usr/local/apache2/bin/apxs
make
make install

リポジトリ作成

mkdir /svn/repos
svnadmin create /svn/repos/src

作成したディレクトリをapacheが読み書きできるようにする
chown -R apache:apache /svn/repos/src

httpd.confを更新

<location /subversion>
DAV svn
SVNPath /svn/repos/src
# 必要に応じてSSLとかベーシック認証とかSVNアクセス制限とか…
</location>

ブラウザでアクセスして
Revision 0: /
と表示されていればOK

WindowsからリポジトリにアクセスするならTortoiseSVNとかが良いです。