通过trac-admin initenv创建一个新的Trac项目

时间:2011-08-22 16:34:26

标签: trac

我对Trac有些新意。 我在ubuntu系统上运行trac版本0.11.7。

我正在尝试通过以下命令创建另一个项目:

“trac-admin / var / lib / trac / shipping_tracker initenv”。

在回答各种问题后,程序失败并返回错误 (见:http://pastebin.com/yijzpB3i)“表'系统'已存在”

这是否意味着我每次都需要创建一个新项目,我将不得不进入 mysql数据库并创建一个新的数据库,如trac1,trac2等?

我确实注意到这张特殊的票(http://trac.edgewall.org/ticket/5138)在哪里 有人说你必须为每个项目创建一个新的数据库。这是正确的吗?

谢谢。

- 麦克

2 个答案:

答案 0 :(得分:2)

每个Trac环境都是一个完全独立的空间,它使用一个单独的数据库。所以,是的,您需要为每个环境创建一个新数据库(尽管将它们命名为trac1trac2等可能是个坏主意。)。

如果您想经常创建新环境,您真正需要的可能是multi-project support,它允许您在一个环境中拥有不同的项目。但是,从Trac 0.13开始,它仍未完成,计划为0.14。

您可能还想了解various ideas on having multiple projects with Trac。其中一个涉及制作Trac商店multiple environments in a single database,虽然它可能已过时并可能会中断自动更新。

答案 1 :(得分:1)

我正在使用Trac 1.0,作为独立服务器运行,并且为了在一个trac安装上运行多个项目,您仍然需要使用

设置新环境
trac-admin /path/to/trac/yournewpoject initenv

...然后在/path/to/trac/yournewpoject目录中创建.htpasswd文件,使用

添加用户
htpasswd /path/to/trac/yournewpoject/.htpasswd newuser

(或复制现有的.htpasswd文件)...然后重启trac,类似于followin命令:

python /path/to/tracd --user=yourlinuxuser --group=yourlinuxgroup -d \
-b hostname -p 8000 \
--basic-auth=oldproject,/path/to/trac/oldproject/.htpasswd,realmname \
--basic-auth=yournewpoject,/path/to/trac/yournewpoject/.htpasswd,realmname \
/path/to/trac/oldproject \
/path/to/trac/yournewpoject

如果您使用与我相同类型的基本身份验证,则此选项有效。