Tracは使いこなせないのでSubversionだけでやってみる
運用イメージはこんな感じ
http://subversion.apache.org/
svnサーバにインストールする
# tar xvzf subversion-1.6.17.tar.gz # tar xvzf subversion-deps-1.6.17.tar.gz # cd subversion-1.6.17 # ./configure # make # make install
1.7以降は subversion-deps-1.7.*.tar.gz は無くなったようです。
Aapacheはソースからインストール済みで、DAVは使用しないので、オプションは以下で大丈夫かと。
# tar xvzf subversion-1.7.1.tar.gz # cd subversion-1.7.1 # ./get-deps.sh # ./configure --with-apr-util=/usr/local/apache2 --without-serf # make # make install
get-deps.sh で取得されるものは、
apr-1.4.5.tar.bz2 apr-util-1.3.12.tar.bz2 neon-0.29.6.tar.gz serf-0.7.2.tar.bz2 zlib-1.2.5.tar.bz2 sqlite-amalgamation-3070603.zip
1.7になって変わったところは .svn フォルダが作業フォルダのトップだけに作成されるようになった!
単体のデーモンとしても動作させることができるが、inetd経由で動かす
# vi /etc/xinetd.d/svn
service svn { disable = no socket_type = stream protocol = tcp wait = no user = nobody server = /usr/local/bin/svnserve server_args = -i -r /home/svn }
# /sbin/chkconfig --add svn # /etc/rc.d/init.d/xinetd restart
xinetdが入っていない場合は
# yum install xinetd
クライアントと公開サーバからのみ接続を許可する
# vi /etc/hosts.allow
svnserve: 192.168.0.2 192.168.0.4 ALL: ALL :deny
# mkdir /home/svn # svnadmin create --fs-type fsfs /home/svn/test_dev # chown nobody.nobody -R /home/svn/test_dev
anonymousは何もさせずに認証済みユーザーは読み書きOKにする
認証の設定は他のリポジトリでも使いまわすので別ファイルに書き出し
# vi /home/svn/test_dev/conf/svnserve.conf
anon-access = none auth-access = write password-db = /home/svn/.password-db
# vi /home/svn/.password-db
[users] user1 = hogehoge1 user2 = hogehoge2
リポジトリのURLは svn://192.168.0.3/test_dev
http://tortoisesvn.tigris.org/
クライアントに入れる
同じダウンロードページから日本語のLanguagePackをダウンロードして日本語化ができます
通常 trunk, branches, tags の3つのフォルダを作るらしい
クライアント側で test_dev フォルダを作成し、 svn://192.168.0.3/test_dev に対してチェックアウトを実行
trunk, branches, tags のフォルダを作成し、追加、コミット
一度 test_dev フォルダを削除し、再度 test_dev を作成
svn://192.168.0.3/test_dev/trunk に対してチェックアウトを実行
公開サーバを /home/test_dev とした場合
$ cd /home/test_dev $ svn --username user1 --password hogehoge1 checkout svn://127.0.0.1/test_dev/trunk ./
パーミッションの取り扱いに注意
$ cd /home/test_dev $ svn update
# vi /usr/local/apache2/conf/httpd.conf
<DirectoryMatch "\.svn"> Order allow,deny Deny from all Satisfy All </DirectoryMatch>
# /etc/rc.d/init.d/httpd graceful
こちらを参考に Subversion+Tracの使い方
http://d.hatena.ne.jp/pasela/20090206/svn_backup
$ svn update -r 100
インストーラーを再度実行し、Repairで再インストールして再起動してみよう。