- 追加された行はこの色です。
- 削除された行はこの色です。
[[trac on FreeBSD]]
なんだか、SVN Tracの記事が散漫で見にくくなっているので、改訂しる
#contents
*subversion のインストール [#q185ff67]
portinstall devel/subversion
# echo svnserve_enable="YES" >> /etc/rc.conf
http://www.caldron.jp/~nabetaro/svn/svnbook-1.5-final/svn-book.html#svn.basic
*svn起動 [#n2620902]
**svn起動 [#n2620902]
/usr/local/etc/rc.d/svnserve start
Jun 9 14:50:15 blackcube kernel: Starting svnserve.
Jun 9 14:50:15 blackcube kernel: su:
Jun 9 14:50:15 blackcube kernel: unknown login: svn
http://blog.perl.tv/2007/01/freebsd_60subversion_trac.html
# pw groupadd -n svn -g 90
# pw useradd -n svn -u 90 -g svn -d /nonexistent -s /nonexistent
デフォルトだと svnserve に -r オプションがついているので該当箇所をコメントアウトしておく。
# diff -u /usr/local/etc/rc.d/svnserve.sh.orig /usr/local/etc/rc.d/svnserve.sh
--- /usr/local/etc/rc.d/svnserve.sh.orig Sun Jan 14 17:11:17 2007
+++ /usr/local/etc/rc.d/svnserve.sh Sun Jan 14 17:12:01 2007
@@ -30,6 +30,6 @@
rcvar=`set_rcvar`
load_rc_config $name
command=/usr/local/bin/svnserve
-command_args="-r ${svnserve_data}"
+#command_args="-r ${svnserve_data}"
run_rc_command "$1"
*svn再起動 [#jb8160e9]
**svn再起動 [#jb8160e9]
k222# /usr/local/etc/rc.d/svnserve restart
Stopping svnserve.
Starting svnserve.
**WordPress ( リポジトリ ) の作成 [#l7b4304a]
# mkdir -p /usr/local/var/svn/repos
# svnadmin create /usr/local/var/svn/repos/wordpress
# cd /usr/local/var/svn/repos/wordpress
# mkdir -p tmp/trunk tmp/tags tmp/branches
# chown -R svn:svn /usr/local/var/svn/repos/wordpress
/usr/local/var/svn/repos/wordpress/tmp/trunk へ管理したいデータを入れる。今回は、WordPress で。
blackcube# svn import /usr/local/var/svn/repos/wordpress/tmp/ file:///usr/local/var/svn/repos/wordpress/ -m "Initial import"
Adding /usr/local/var/svn/repos/wordpress/tmp/trunk/wordpress/wp-admin/user/index.php
Adding /usr/local/var/svn/repos/wordpress/tmp/trunk/wordpress/wp-admin/user/admin.php
Adding /usr/local/var/svn/repos/wordpress/tmp/trunk/wordpress/wp-admin/user/index-extra.php
Adding /usr/local/var/svn/repos/wordpress/tmp/trunk/wordpress/wp-feed.php
Adding /usr/local/var/svn/repos/wordpress/tmp/branches
Adding /usr/local/var/svn/repos/wordpress/tmp/tags
Committed revision 1.
ここで、TrotoiseSVN(Win)または(Mac)で確認したいところだが、HTTPプロトコールでの確認ができないので、ApacheにDAVを設定。
**Apache WebDAV on Subversion † [#qf7530d4]
# vi /usr/local/etc/apache22/Includes/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /usr/local/var/svn/repos
SVNListParentPath On
<LimitExcept GET PROPFIND OPTIONS REPORT>
Deny from all
</LimitExcept>
</Location>
リポジトリ一覧を見せたくない場合は SVNListParentPath? を off にする。
# vi /usr/local/etc/apache22/Includes/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /usr/local/var/svn/repos
SVNListParentPath On
# <LimitExcept GET PROPFIND OPTIONS REPORT>
<LimitExcept GET POST OPTIONS PROPFIND MKACTIVITY CHECKOUT MKACTIVITY DELETE PROPPATCH MKCOL MERGE REPORT PUT COPY>
Deny from all
</LimitExcept>
</Location>
ココで一応TortoiseSVNで確認。
&ref(TortoiseSVN_WP.png);
このように見ていて居ればおk。一番最初は時間がかかるけど、任意のフォルダへ「チェックアウト」しておく。
*trac [#r4406db4]
portinstall www/trac
FreeBSD 7.2RなBlackCubeで、
=> No SHA256 checksum recorded for python/Python-2.5.2.tgz
といわれてストップ。したので、portupgrade
blackcube# portupgrade lang/python25
してから、
portinstall www/trac
した。
**使用準備 [#v6bb5f41]
k222# mkdir -p /usr/local/www/apache22/data/trac/sandbox
k222# trac-admin /usr/local/www/apache22/data/trac/sandbox initenv
Creating a new Trac environment at /usr/local/www/apache22/data/trac/sandbox
blackcube# trac-admin /usr/local/www/apache22/data/trac/sandbox initenv
新規 Trac Environment /usr/local/www/apache22/data/trac/sandbox の生成
Project Name [My Project]> sandbox ( Enter )
Database connection string [sqlite:db/trac.db]> ( Enter )
Repository type [svn]> ( Enter )
Path to repository [/path/to/repos]> /usr/local/var/svn/repos/sandbox ( Enter )
---------------------------------------------------------------------
Warning: couldn't index the repository.
はじめに、プロジェクトのデータベースの初期化と準備をするために、
あなたの環境についていくつか確認をします。
This can happen for a variety of reasons: wrong repository type,
no appropriate third party library for this repository type,
no actual repository at the specified repository path...
プロジェクトの名前を入力してください。
この名前は、ページのタイトルと説明に使用されます。
You can nevertheless start using your Trac environment, but
you'll need to check again your trac.ini file and the [trac]
repository_type and repository_path settings in order to enable
the Trac repository browser.
プロジェクト名 [My Project]> sandbox
使用するデータベースへの接続文字列を指定してください。
デフォルトではローカルに SQLite データベースを作成します。
既に存在する PostgreSQL データベースを使うこともできます。
(Trac では、接続文字列は厳密に表記する必要があります。
詳細は Trac のドキュメントを参照してください)
データベース接続文字列 [sqlite:db/trac.db]>
プロジェクトの生成と初期化
デフォルトの Wiki ページのインストール
InterMapTxt を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/InterMapTxt からインポートしました
TracIni を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracIni からインポートしました
WikiRestructuredTextLinks を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiRestructuredTextLinks からインポートしました
TracLogging を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracLogging からインポートしました
WikiStart を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiStart からインポートしました
TracLinks を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracLinks からインポートしました
TracStandalone を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracStandalone からインポートしました
WikiProcessors を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiProcessors からインポートしました
TracImport を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracImport からインポートしました
TracInterfaceCustomization を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracInterfaceCustomization からインポートしました
WikiHtml を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiHtml からインポートしました
SandBox を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/SandBox からインポートしました
TracSearch を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracSearch からインポートしました
TracQuery を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracQuery からインポートしました
TracFineGrainedPermissions を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracFineGrainedPermissions からインポートしました
TracWiki を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracWiki からインポートしました
TracAccessibility を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracAccessibility からインポートしました
TracChangeset を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracChangeset からインポートしました
TracRss を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracRss からインポートしました
TracEnvironment を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracEnvironment からインポートしました
TracUnicode を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracUnicode からインポートしました
TracModPython を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracModPython からインポートしました
TracRevisionLog を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracRevisionLog からインポートしました
WikiPageNames を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiPageNames からインポートしました
TitleIndex を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TitleIndex からインポートしました
TracBrowser を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracBrowser からインポートしました
CamelCase を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/CamelCase からインポートしました
WikiRestructuredText を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiRestructuredText からインポートしました
TracNavigation を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracNavigation からインポートしました
TracAdmin を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracAdmin からインポートしました
TracGuide を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracGuide からインポートしました
TracNotification を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracNotification からインポートしました
TracPermissions を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracPermissions からインポートしました
TracRepositoryAdmin を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracRepositoryAdmin からインポートしました
InterTrac を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/InterTrac からインポートしました
TracReports を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracReports からインポートしました
TracCgi を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracCgi からインポートしました
InterWiki を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/InterWiki からインポートしました
TracSupport を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracSupport からインポートしました
TracRoadmap を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracRoadmap からインポートしました
WikiNewPage を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiNewPage からインポートしました
TracBackup を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracBackup からインポートしました
TracUpgrade を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracUpgrade からインポートしました
TracWorkflow を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracWorkflow からインポートしました
TracPlugins を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracPlugins からインポートしました
TracModWSGI を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracModWSGI からインポートしました
WikiMacros を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiMacros からインポートしました
TracSyntaxColoring を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracSyntaxColoring からインポートしました
WikiDeletePage を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiDeletePage からインポートしました
TracFastCgi を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracFastCgi からインポートしました
TracTicketsCustomFields を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracTicketsCustomFields からインポートしました
WikiFormatting を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/WikiFormatting からインポートしました
TracTimeline を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracTimeline からインポートしました
TracTickets を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracTickets からインポートしました
TracInstall を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/TracInstall からインポートしました
PageTemplates を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/PageTemplates からインポートしました
RecentChanges を /root/.python-eggs/Trac-0.12.2-py2.5.egg-tmp/trac/wiki/default-pages/RecentChanges からインポートしました
---------------------------------------------------------------------
Project environment for 'sandbox' created.
Trac Environment 'sandbox' ができました。
You may now configure the environment by editing the file:
今後、この環境の設定をする場合は、次のファイルを利用します:
/usr/local/www/apache22/data/trac/sandbox/conf/trac.ini
/usr/local/www/apache22/data/trac/sandbox/conf/trac.ini
If you'd like to take this new project environment for a test drive,
try running the Trac standalone web server `tracd`:
あなたがこの新しいプロジェクトのテストを考えているなら、
スタンドアロンウェブサーバ `tracd` を試してみてください:
tracd --port 8000 /usr/local/www/apache22/data/trac/sandbox
tracd --port 8000 /usr/local/www/apache22/data/trac/sandbox
Then point your browser to http://localhost:8000/sandbox.
There you can also browse the documentation for your installed
version of Trac, including information on further setup (such as
deploying Trac to a real web server).
それから、ブラウザで http://localhost:8000/sandbox にアクセスします。
インストールしたバージョンに合わせた今後のセットアップ情報などが含まれた、
ドキュメントが閲覧できます。(例えばウェブサーバで公開する手順など)
The latest documentation can also always be found on the project
website:
最新のドキュメントは、プロジェクトのウェブサイトから入手できます:
http://trac.edgewall.org/
http://trac.edgewall.org/
Congratulations!
k222# chown -R www:www /usr/local/www/apache22/data/trac/sandbox
blackcube# chown -R www:www /usr/local/www/apache22/data/trac/sandbox
**mod_python Install [#s49ae2fc]
k222# portinstall www/mod_python3
================================================================================
Also remember to add to your Apache configuration in the appropriate context:
PythonPath "['/path/to/foo', '/path/to/bar']"
AddHandler python-program .py
PythonHandler foobar
PythonDebug On
For more information, see http://www.modpython.org/.
================================================================================
**Apache Setting [#rf41f95f]
# vi /usr/local/etc/apache22/httpd.conf
追加。
以前は手動で追加してたけど、
LoadModule python_module libexec/apache22/mod_python.so
後は見えるように設定。
いまのPortsでは、自動で追加される。
# vi /usr/local/etc/apache22/Includes/trac.conf
<Location /trac>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /usr/local/www/apache22/data/trac
PythonOption TracUriRoot /trac
</Location>
***Tracの設定 [#x8b7e448]
/usr/local/www/apache22/data/trac/sandbox/conf/trac.ini
まずは、参照するreposの設定
repository_dir = /usr/local/var/svn/repos/sandbox
----
----
**OpenSSH on Subversion [#aa600ba8]
svn専用ユーザを追加する。
# pw groupadd -n svn
# pw useradd -n svn -c "Subversion Comit User" -d /home/svn -g svn -h - -s /bin/sh
# mkdir -p /home/svn/.ssh
# chown -R svn:svn /home/svn
一般ユーザの公開鍵を /home/svn/.ssh にコピーする。
通常の公開鍵だとシェルでのログインも出来てしまうので、 command 等を公開鍵の先頭に追記する。 ( 実際は一行 )
command="svnserve -t --tunnel-user=コミットユーザ名 -r /usr/local/var/svn/repos"
,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss AAAAB
(中略)M6BA== ****@examle.com
sshd_config で AllowUsers を設定している場合は svn ユーザを追加する。
# grep AllowUsers /etc/ssh/sshd_config
AllowUsers user svn
# /etc/rc.d/sshd restart
k222# cd /home/svn/
k222# svnadmin create repos
k222# chown -R svn:svn repos
k222# /usr/local/etc/rc.d/svnserve start
vi /etc/rc.conf
svnserve_enable="YES"
k222#
k222#
**Apache WebDAV on Subversion [#ze991b71]
# vi /usr/local/etc/apache22/Includes/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /usr/local/var/svn/repos
SVNListParentPath On
<LimitExcept GET PROPFIND OPTIONS REPORT>
Deny from all
</LimitExcept>
</Location>
リポジトリ一覧を見せたくない場合は SVNListParentPath を off にする。
**error [#ya5687bf]
k222# trac-admin /usr/local/www/apache22/data/trac/sandbox resync
Resyncing repository history...
Command failed: /usr/local/www/apache22/data/trac/sandbox does not appear to be a Subversion repository.
k222#
http://mishuku.net/archives/2008/04/trac.php
** portinstall www/trac-webadmin [#c5a58693]
TracWebAdmin のeggファイルは添付ファイルにあります。
この添付ファイルをDLし、.zip 拡張子を除去し、プロジェクトのpluginsフォルダへコピー
その後、
chown www:www TracWebAdmin-0.1.2dev_r6060-py2.4.egg
してから、権限を与えたいユーザ が kuji であれば、
k222# trac-admin /usr/local/www/apache22/data/trac/RS_Base permission add kuji TRAC_ADMIN
する。と、『管理』というバーが出てくる。
----
#counter([total|today|yesterday]);
&lastmod;
----