trac(WEBでプロジェクト管理)

Tips

post-commitスクリプトの引数

チケットのインポート

Tracの通知メールの差出人が化ける

MIMEMultipartメールなのだが、Becky 2.30でみると差出人が化けて表示されるようだ。
Fromの部分だけエンコーディングされていないのが原因。
デフォルトでは以下のようにプロジェクト名+差出人となっている。

Tracからのメールが飛ばない場合

ログ出力

source:リンクで画像を表示しない

標準では画像ファイル(.png, .gif, .jpg)へリンクすると自動的に展開し、表示されます。
これを抑制したい場合、末尾に/を付けると良いようです。
ちなみにリンク[]では使えませんでした。イリーガルな使い方のようです。

source:trunk/〜/foo.jpg/

英語版Tracから日本語版Tracへの移行

  1. trac-admin wiki upgrade
  2. DBに含まれている文字列は日本語化されないので以下を実施

SQLite 2.x -> 3.x。または 3.x -> 2.xへ移行

SQLiteの3.xと2.xにはファイルフォーマットに互換性が無い。以下のエラーの場合は、データベースのバージョンが異なるので、エクスポート/インポートしなくてはいけない。

Unable to open database "trac.db": file is encrypted or is not a database
  1. エクスポート
    • 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
  2. 移動
    # mv trac.db.x trac.db

キャッシュディレクトリを明示的に指定する

「/etc/init.d/httpd restart」だとエラー、「service httpd restart」だと正常に起動する場合の対策。

起動ユーザのホームディレクトリにキャッシュディレクトリを作成しようとする模様。
「/root/.python-eggs」にキャッシュディレクトリを作成しようとして失敗している。

権限のグループ化

ページに目次(アウトライン)を付ける

v0.9からPageOutlineマクロが標準添付されたので、ページの先頭でこれを記述すれば良い。

[[PageOutline]]

その他標準マクロは、tracのヘルプの「wiki/WikiMacros」に記述がある。

wikiマクロ集

除外ファイル

以下、リポジトリに格納しなくともよいファイル

wikiに「Table of contents」を表示させる

日本語訳

UTF-8以外のソースコードの表示

pythonの内部コードがUTF-8なので、通常UTF-8のみ表示可能。
JapaneseCodecsを追加すれば、他文字セットも表示可能になる。

  1. JapaneseCodecsがインストールされている事
  2. 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のモジュールが無い時は。

subversionのソースから、以下のようにインストールする。

# configure
# make swig-py
# make install-swig-py
# ln -s /usr/local/lib/svn-python/libsvn /usr/lib/python2.3/site-packages/libsvn
# ln -s /usr/local/lib/svn-python/svn /usr/lib/python2.3/site-packages/svn

Subversion リポジトリに格納しているファイルのエンコード...

Subversion リポジトリに格納しているファイルのエンコードが、ファイルごとに違う場合、svnのmime-type属性にcharsetを追加する。

$ svn propset 'svn:mime-type' 'text/plain; charset=Shift_JIS' *.txt
$ svn propset 'svn:mime-type' 'text/x-csrc; charset=Shift_JIS' *.c

ただし、以下のように[auto-props]では利用できない。「;」と「=」がデリミタとして指定されてる模様。以下のようにすると「charset=Shift_JIS」として登録されてしまう。

*.csv = svn:eol-style=CRLF;svn:mime-type=text/plain;charset=Shift_JIS

mod_pythonを用いる

複数のプロジェクト用にApacheを設定する

# 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/trac.cgi$2 [S=1,E=TRAC_ENV:/var/lib/trac/$1]
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>
----------------------------------------------------------

スクリプト

サンプルwiki

リンク


添付ファイル: filesvn-scripts.zip 3499件 [詳細] filePocketWikiMemo 2914件 [詳細] fileTracInstallPlatforms 2815件 [詳細] fileTracMultipleProjects 3644件 [詳細] fileindex.php 4137件 [詳細] filereport_ja.sql 2949件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-09-15 (土) 07:31:38