Memo/Subversion/trac
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*trac(WEBでプロジェクト管理) [#t8979ed3]
#contents
#ls2(,title)
/////////////////////////////////////////////////////////...
*Tips [#g70114ff]
**post-commitスクリプトの引数 [#qab184ea]
-trac 0.10.4
/var/svn/SandBox 70
**チケットのインポート [#v1885cc0]
-Bugzilla, Sourceforge, Mantis, CSV
--http://trac.edgewall.org/wiki/TracImport
**Tracの通知メールの差出人が化ける [#j0ddcbf8]
-v0.10.4では解消
-v0.9.6で確認
MIMEMultipartメールなのだが、Becky 2.30でみると差出人が化...
Fromの部分だけエンコーディングされていないのが原因。~
デフォルトでは以下のようにプロジェクト名+差出人となって...
-/usr/lib/python2.3/site-packages/trac/Notify.py
msg['From'] = '%s <%s>' % (projname, self.from_email)
--プロジェクト名を表示しないように変更
--- /usr/local/src/trac-0.9.6-ja-1/trac/Notify.py 2...
+++ Notify.py 2007-03-14 15:21:24.000000000 +0900
@@ -132,7 +132,7 @@
msg['X-Trac-Project'] = projname
msg['X-URL'] = self.config.get('project','url')
msg['Subject'] = Header(self.subject, 'utf-8')
- msg['From'] = '%s <%s>' % (projname, self.from_...
+ msg['From'] = '%s' % (self.from_email)
msg['Sender'] = self.from_email
msg['Reply-To'] = self.replyto_email
msg['To'] = rcp
----
# service httpd graceful
**Tracからのメールが飛ばない場合 [#f522daa5]
-/var/log/maillog
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: connect f...
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: lost conn...
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: disconnec...
-trac.iniでログを出力するように変更し、apacheを再起動
22:04:49 Trac[web_ui] ERROR: Failure sending notificatio...
known')
Traceback (most recent call last):
-名前が見つからないらしい。
--/etc/hostsに追加したら直った。pingで確認すると良い。
**ログ出力 [#n79a2356]
-trac.iniを書き換えて、apacheを再起動させるとlog/にログフ...
# vi conf/trac.ini
----
[logging]
log_file = trac.log
log_level = DEBUG
log_type = file
----
# service httpd graceful
**source:リンクで画像を表示しない [#a0a063a6]
標準では画像ファイル(.png, .gif, .jpg)へリンクすると自動...
これを抑制したい場合、末尾に/を付けると良いようです。~
ちなみにリンク[]では使えませんでした。イリーガルな使い方...
source:trunk/~/foo.jpg/
**英語版Tracから日本語版Tracへの移行 [#hc024d04]
+ trac-admin wiki upgrade
+ DBに含まれている文字列は日本語化されないので以下を実施
- レポート表示(上部メニューの「チケットを見る」)の日本語化
-- 日本語版からダンプ
sqlite> .output report_ja.sql
sqlite> .dump report
sqlite> .exit
--ダンプしたSQLをちょっと編集し、create tableを削除と既存...
&attachref(report_ja.sql);
--更新
$ su
# sqlite -init report.sql /var/trac/mappl/db/trac.db
Loading resources from report.sql
SQLite version 2.8.16
Enter ".help" for instructions
sqlite> .exit
**SQLite 2.x -> 3.x。または 3.x -> 2.xへ移行 [#d9eabfec]
SQLiteの3.xと2.xにはファイルフォーマットに互換性が無い。...
Unable to open database "trac.db": file is encrypted or ...
+エクスポート
--2.x -> 3.x
# cd /trac-repository/db
# sqlite trac.db .dump | sqlite3 trac.db.3
--3.x -> 2.x
# cd /trac-repository/db
# sqlite3 trac.db .dump | sqlite trac.db.2
+移動
# mv trac.db.x trac.db
**キャッシュディレクトリを明示的に指定する [#n80c4ea0]
~「/etc/init.d/httpd restart」だとエラー、「service httpd...
~起動ユーザのホームディレクトリにキャッシュディレクトリを...
「/root/.python-eggs」にキャッシュディレクトリを作成しよ...
-明示的にキャッシュディレクトリを指定(予め /var/www/.pyth...
<Location /projects>
...
SetEnv PYTHON_EGG_CACHE /var/www/.python-eggs
</Location>
**権限のグループ化 [#abd546ba]
-権限をまとめてグループにして、グループ単位で設定すること...
# trac-admin /path/to permission add developers TICKET_C...
# trac-admin /path/to permission add spy developers
-TICKET_CREATE LOG_VIEW TICKET_MODIFY権限を持つdevelopers...
**ページに目次(アウトライン)を付ける [#je0f43a1]
~v0.9からPageOutlineマクロが標準添付されたので、ページの...
[[PageOutline]]
その他標準マクロは、tracのヘルプの「wiki/WikiMacros」に記...
**wikiマクロ集 [#a49347f8]
-[[MacroBazaar>http://trac.edgewall.org/wiki/MacroBazaar]]
-[[Trac Hacks>http://trac-hacks.org/]]
-プロジェクト全体にインストール
/usr/share/trac/wiki-macros/
-プロジェクト毎にインストール
/var/trac/SandBox/wiki-macros/
-ページは/で階層構造をとる事ができる。以下の外部プラグイ...
--ParentWiki.py~
親wikiページの表示
wget -O ParentWiki.py http://trac.edgewall.org/attachmen...
--SubWiki
子のwikiページの表示
wget -O SubWiki.py http://trac.edgewall.org/attachment/w...
**除外ファイル [#a8db4e93]
以下、リポジトリに格納しなくともよいファイル
-VisualStudio
,拡張子,説明
,*.opt,開発環境で使用されるワークスペースのオプションファ...
,*.clw,ClassWizard で使用されるファイル。自動生成される。
,*.ncb,コンパイルされないブラウザファイル。自動生成される。
,*.aps,現在のリソーススクリプトファイルのバイナリバージョ...
,*.plg,プロジェクトログ。コンパイル結果などが記録される。
**wikiに「Table of contents」を表示させる [#pede2ab2]
-ページ先頭付近に以下の1行を追加する
[[TracGuideToc]]
**日本語訳 [#b3cbb699]
-チケットの種類
|defect|不具合|
|enhancement|新機能/拡張|
|task|タスク|
-優先度
|blocker|極めて重大|
|critical|重大|
|major|中|
|minor|低|
|trivial|最低|
-操作
|fixed|修正済み|
|invalid|無効|
|wontfix|修正しない|
|duplicate|重複|
|worksforme|再現しない|
--[[@IT > IT Architect > 開発プロセス再入門(8)>http://...
**UTF-8以外のソースコードの表示 [#e2b6292e]
pythonの内部コードがUTF-8なので、通常UTF-8のみ表示可能。~
JapaneseCodecsを追加すれば、他文字セットも表示可能になる。~
+JapaneseCodecsがインストールされている事
+trac.iniの編集~
「/var/trac/sampleproject/conf/trac.ini」の設定を変更
--EUC-JPの場合
[trac]
default_charset = japanese.euc-jp
--Shift_JISの場合
[trac]
default_charset = japanese.shift_jis
--その他
default_charset = utf-8
default_charset = japanese.ms932
default_charset = japanese.iso-2022-jp
**python2.3でsubversionのモジュールが無い時は。 [#x00471c8]
subversionのソースから、以下のようにインストールする。~
# configure
# make swig-py
# make install-swig-py
# ln -s /usr/local/lib/svn-python/libsvn /usr/lib/python...
# ln -s /usr/local/lib/svn-python/svn /usr/lib/python2.3...
**Subversion リポジトリに格納しているファイルのエンコード...
~Subversion リポジトリに格納しているファイルのエンコード...
$ svn propset 'svn:mime-type' 'text/plain; charset=Shift...
$ svn propset 'svn:mime-type' 'text/x-csrc; charset=Shif...
~ただし、以下のように[auto-props]では利用できない。「;」...
*.csv = svn:eol-style=CRLF;svn:mime-type=text/plain;char...
**mod_pythonを用いる [#l67ed6ed]
-trac.conf
<Location /var/www/projects/trac.cgi>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
</Location>
**複数のプロジェクト用にApacheを設定する [#j60146ec]
-&attachref(index.php);
-パスワードファイル
/var/lib/trac/trac.htpasswd
-http://hostname/projects/ や 存在しないプロジェクトにア...
# mkdir /var/www/projects
# cp /usr/share/trac/cgi-bin/trac.cgi /var/www/projects/
# cp index.php /var/www/projects/
# mkdir /var/lib/trac
# vi /etc/httpd/conf/trac.conf
----------------------------------------------------------
RewriteEngine on
RewriteRule ^/projects/+$ /projects/index.html [L]
RewriteCond /var/lib/trac/$1 -d
RewriteRule ^/projects/([[:alnum:]]+)(/?.*) /projects/tr...
RewriteRule ^/projects/(.*) /projects/index.html
<Directory "/var/www/projects">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
AddHandler cgi-script .cgi
Order allow,deny
Allow from all
</Directory>
<LocationMatch "/projects/[[:alnum:]]+/login">
AuthType Basic
AuthName "trac"
AuthUserFile /var/lib/trac/trac.htpasswd
Require valid-user
</LocationMatch>
----------------------------------------------------------
-RewriteEngine はVirtualHost毎に必要なので、Includeする
# vi /etc/httpd/conf/httpd.conf
----------------------------------------------------------
<VirtualHost 対象>
Include "/etc/httpd/conf/trac.conf"
</VirtualHost>
----------------------------------------------------------
# svnadmin create --fs-type fsfs /var/svn/testproj
# trac-admin /var/lib/trac/testproj initenv
# chown -R apache:apache /var/lib/trac/testproj
# service httpd restart
**スクリプト [#e5ed5e0a]
-svnリポジトリ&trac作成~
-basic認証ユーザ作成
-サンプル構成インポート~
&attachref(svn-scripts.zip);
**サンプルwiki [#ye126346]
-&attachref(PocketWikiMemo);
-&attachref(TracInstallPlatforms);
-&attachref(TracMultipleProjects);
*リンク [#j414da7e]
-[[Tracおすすめプラグイン>http://d.hatena.ne.jp/torin/200...
-[[日本語版trac>http://www.i-act.co.jp/project/products/p...
-[[Trac(BTS+Wiki+SVN)を試してみる>http://yamashita.dynd...
-[[trac導入の薦め>http://tmk.plala.jp/wiki/index.php?trac...
終了行:
*trac(WEBでプロジェクト管理) [#t8979ed3]
#contents
#ls2(,title)
/////////////////////////////////////////////////////////...
*Tips [#g70114ff]
**post-commitスクリプトの引数 [#qab184ea]
-trac 0.10.4
/var/svn/SandBox 70
**チケットのインポート [#v1885cc0]
-Bugzilla, Sourceforge, Mantis, CSV
--http://trac.edgewall.org/wiki/TracImport
**Tracの通知メールの差出人が化ける [#j0ddcbf8]
-v0.10.4では解消
-v0.9.6で確認
MIMEMultipartメールなのだが、Becky 2.30でみると差出人が化...
Fromの部分だけエンコーディングされていないのが原因。~
デフォルトでは以下のようにプロジェクト名+差出人となって...
-/usr/lib/python2.3/site-packages/trac/Notify.py
msg['From'] = '%s <%s>' % (projname, self.from_email)
--プロジェクト名を表示しないように変更
--- /usr/local/src/trac-0.9.6-ja-1/trac/Notify.py 2...
+++ Notify.py 2007-03-14 15:21:24.000000000 +0900
@@ -132,7 +132,7 @@
msg['X-Trac-Project'] = projname
msg['X-URL'] = self.config.get('project','url')
msg['Subject'] = Header(self.subject, 'utf-8')
- msg['From'] = '%s <%s>' % (projname, self.from_...
+ msg['From'] = '%s' % (self.from_email)
msg['Sender'] = self.from_email
msg['Reply-To'] = self.replyto_email
msg['To'] = rcp
----
# service httpd graceful
**Tracからのメールが飛ばない場合 [#f522daa5]
-/var/log/maillog
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: connect f...
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: lost conn...
Mar 13 22:04:49 ts01x036 postfix/smtpd[30163]: disconnec...
-trac.iniでログを出力するように変更し、apacheを再起動
22:04:49 Trac[web_ui] ERROR: Failure sending notificatio...
known')
Traceback (most recent call last):
-名前が見つからないらしい。
--/etc/hostsに追加したら直った。pingで確認すると良い。
**ログ出力 [#n79a2356]
-trac.iniを書き換えて、apacheを再起動させるとlog/にログフ...
# vi conf/trac.ini
----
[logging]
log_file = trac.log
log_level = DEBUG
log_type = file
----
# service httpd graceful
**source:リンクで画像を表示しない [#a0a063a6]
標準では画像ファイル(.png, .gif, .jpg)へリンクすると自動...
これを抑制したい場合、末尾に/を付けると良いようです。~
ちなみにリンク[]では使えませんでした。イリーガルな使い方...
source:trunk/~/foo.jpg/
**英語版Tracから日本語版Tracへの移行 [#hc024d04]
+ trac-admin wiki upgrade
+ DBに含まれている文字列は日本語化されないので以下を実施
- レポート表示(上部メニューの「チケットを見る」)の日本語化
-- 日本語版からダンプ
sqlite> .output report_ja.sql
sqlite> .dump report
sqlite> .exit
--ダンプしたSQLをちょっと編集し、create tableを削除と既存...
&attachref(report_ja.sql);
--更新
$ su
# sqlite -init report.sql /var/trac/mappl/db/trac.db
Loading resources from report.sql
SQLite version 2.8.16
Enter ".help" for instructions
sqlite> .exit
**SQLite 2.x -> 3.x。または 3.x -> 2.xへ移行 [#d9eabfec]
SQLiteの3.xと2.xにはファイルフォーマットに互換性が無い。...
Unable to open database "trac.db": file is encrypted or ...
+エクスポート
--2.x -> 3.x
# cd /trac-repository/db
# sqlite trac.db .dump | sqlite3 trac.db.3
--3.x -> 2.x
# cd /trac-repository/db
# sqlite3 trac.db .dump | sqlite trac.db.2
+移動
# mv trac.db.x trac.db
**キャッシュディレクトリを明示的に指定する [#n80c4ea0]
~「/etc/init.d/httpd restart」だとエラー、「service httpd...
~起動ユーザのホームディレクトリにキャッシュディレクトリを...
「/root/.python-eggs」にキャッシュディレクトリを作成しよ...
-明示的にキャッシュディレクトリを指定(予め /var/www/.pyth...
<Location /projects>
...
SetEnv PYTHON_EGG_CACHE /var/www/.python-eggs
</Location>
**権限のグループ化 [#abd546ba]
-権限をまとめてグループにして、グループ単位で設定すること...
# trac-admin /path/to permission add developers TICKET_C...
# trac-admin /path/to permission add spy developers
-TICKET_CREATE LOG_VIEW TICKET_MODIFY権限を持つdevelopers...
**ページに目次(アウトライン)を付ける [#je0f43a1]
~v0.9からPageOutlineマクロが標準添付されたので、ページの...
[[PageOutline]]
その他標準マクロは、tracのヘルプの「wiki/WikiMacros」に記...
**wikiマクロ集 [#a49347f8]
-[[MacroBazaar>http://trac.edgewall.org/wiki/MacroBazaar]]
-[[Trac Hacks>http://trac-hacks.org/]]
-プロジェクト全体にインストール
/usr/share/trac/wiki-macros/
-プロジェクト毎にインストール
/var/trac/SandBox/wiki-macros/
-ページは/で階層構造をとる事ができる。以下の外部プラグイ...
--ParentWiki.py~
親wikiページの表示
wget -O ParentWiki.py http://trac.edgewall.org/attachmen...
--SubWiki
子のwikiページの表示
wget -O SubWiki.py http://trac.edgewall.org/attachment/w...
**除外ファイル [#a8db4e93]
以下、リポジトリに格納しなくともよいファイル
-VisualStudio
,拡張子,説明
,*.opt,開発環境で使用されるワークスペースのオプションファ...
,*.clw,ClassWizard で使用されるファイル。自動生成される。
,*.ncb,コンパイルされないブラウザファイル。自動生成される。
,*.aps,現在のリソーススクリプトファイルのバイナリバージョ...
,*.plg,プロジェクトログ。コンパイル結果などが記録される。
**wikiに「Table of contents」を表示させる [#pede2ab2]
-ページ先頭付近に以下の1行を追加する
[[TracGuideToc]]
**日本語訳 [#b3cbb699]
-チケットの種類
|defect|不具合|
|enhancement|新機能/拡張|
|task|タスク|
-優先度
|blocker|極めて重大|
|critical|重大|
|major|中|
|minor|低|
|trivial|最低|
-操作
|fixed|修正済み|
|invalid|無効|
|wontfix|修正しない|
|duplicate|重複|
|worksforme|再現しない|
--[[@IT > IT Architect > 開発プロセス再入門(8)>http://...
**UTF-8以外のソースコードの表示 [#e2b6292e]
pythonの内部コードがUTF-8なので、通常UTF-8のみ表示可能。~
JapaneseCodecsを追加すれば、他文字セットも表示可能になる。~
+JapaneseCodecsがインストールされている事
+trac.iniの編集~
「/var/trac/sampleproject/conf/trac.ini」の設定を変更
--EUC-JPの場合
[trac]
default_charset = japanese.euc-jp
--Shift_JISの場合
[trac]
default_charset = japanese.shift_jis
--その他
default_charset = utf-8
default_charset = japanese.ms932
default_charset = japanese.iso-2022-jp
**python2.3でsubversionのモジュールが無い時は。 [#x00471c8]
subversionのソースから、以下のようにインストールする。~
# configure
# make swig-py
# make install-swig-py
# ln -s /usr/local/lib/svn-python/libsvn /usr/lib/python...
# ln -s /usr/local/lib/svn-python/svn /usr/lib/python2.3...
**Subversion リポジトリに格納しているファイルのエンコード...
~Subversion リポジトリに格納しているファイルのエンコード...
$ svn propset 'svn:mime-type' 'text/plain; charset=Shift...
$ svn propset 'svn:mime-type' 'text/x-csrc; charset=Shif...
~ただし、以下のように[auto-props]では利用できない。「;」...
*.csv = svn:eol-style=CRLF;svn:mime-type=text/plain;char...
**mod_pythonを用いる [#l67ed6ed]
-trac.conf
<Location /var/www/projects/trac.cgi>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
</Location>
**複数のプロジェクト用にApacheを設定する [#j60146ec]
-&attachref(index.php);
-パスワードファイル
/var/lib/trac/trac.htpasswd
-http://hostname/projects/ や 存在しないプロジェクトにア...
# mkdir /var/www/projects
# cp /usr/share/trac/cgi-bin/trac.cgi /var/www/projects/
# cp index.php /var/www/projects/
# mkdir /var/lib/trac
# vi /etc/httpd/conf/trac.conf
----------------------------------------------------------
RewriteEngine on
RewriteRule ^/projects/+$ /projects/index.html [L]
RewriteCond /var/lib/trac/$1 -d
RewriteRule ^/projects/([[:alnum:]]+)(/?.*) /projects/tr...
RewriteRule ^/projects/(.*) /projects/index.html
<Directory "/var/www/projects">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
AddHandler cgi-script .cgi
Order allow,deny
Allow from all
</Directory>
<LocationMatch "/projects/[[:alnum:]]+/login">
AuthType Basic
AuthName "trac"
AuthUserFile /var/lib/trac/trac.htpasswd
Require valid-user
</LocationMatch>
----------------------------------------------------------
-RewriteEngine はVirtualHost毎に必要なので、Includeする
# vi /etc/httpd/conf/httpd.conf
----------------------------------------------------------
<VirtualHost 対象>
Include "/etc/httpd/conf/trac.conf"
</VirtualHost>
----------------------------------------------------------
# svnadmin create --fs-type fsfs /var/svn/testproj
# trac-admin /var/lib/trac/testproj initenv
# chown -R apache:apache /var/lib/trac/testproj
# service httpd restart
**スクリプト [#e5ed5e0a]
-svnリポジトリ&trac作成~
-basic認証ユーザ作成
-サンプル構成インポート~
&attachref(svn-scripts.zip);
**サンプルwiki [#ye126346]
-&attachref(PocketWikiMemo);
-&attachref(TracInstallPlatforms);
-&attachref(TracMultipleProjects);
*リンク [#j414da7e]
-[[Tracおすすめプラグイン>http://d.hatena.ne.jp/torin/200...
-[[日本語版trac>http://www.i-act.co.jp/project/products/p...
-[[Trac(BTS+Wiki+SVN)を試してみる>http://yamashita.dynd...
-[[trac導入の薦め>http://tmk.plala.jp/wiki/index.php?trac...
ページ名: