5

我在使用新的 Trac 1.0 时遇到了很多关于 git 的问题。我已将 Trac 从 0.12 更新到 1.0。新版本的 Trac 现在带有原生 git 支持,但我没有看到该Browse Source选项卡。git 存储库和 trac 安装位于同一台服务器上。我遵循了这个:TracGit

正如指南所建议的,我已将这些行添加到我的 trac.ini 文件中:

[trac]
...
repository_type = git
repository_dir = /home/gituser/repositories/myproject.git
repository_sync_per_request = 

...

[git]
cached_repository = false
git_bin = /usr/bin/git
git_fs_encoding = utf-8
persistent_cache = false
# projects_base = <inherited>
# projects_list = <inherited>
# projects_url = <inherited>
shortrev_len = 7
trac_user_rlookup = false
use_committer_id = true
use_committer_time = true
wikishortrev_len = 40

[components]
tracopt.versioncontrol.git.* = enabled

现在,如果我转到管理页面-> 存储库,我会看到管理存储库屏幕。从这里,我看到我列出了一个链接,其中包含 /home/gituser/repositories/myproject.git 的目录路径。和Name都出于某种原因Type设置default为(我不知道如何在 trac.ini 中更改它)。如果我单击链接,我可以更详细地查看存储库。但是,它是只读的,我看到了这个注释:

Note: This repository is defined in trac.ini and cannot be edited on this page.

如果我尝试使用管理网页使用同一目录创建新存储库,则会收到一条错误消息,提示我需要使用完整路径。

如果我尝试通过手动输入“http://myproject/browser”来访问 trac 存储库浏览器,我会收到这个奇怪的错误:

/home/gituser/repositories/myproject.git does not appear to be a Git repository

问题是,那个 git 存储库肯定存在。我可以看到与该存储库关联的所有文件,例如分支和钩子文件夹。而且我可以很好地推拉终端。

myproject trac 日志文件夹中没有文件,所以我什至无法检查日志是否有问题。

所以看起来有两个问题:

  • 为什么“浏览源”选项卡根本不显示(或者由于第二个问题而没有显示)?

  • 为什么Trac认为git项目不存在时它不存在?

任何帮助表示赞赏!

4

1 回答 1

3

您没有看到“浏览源代码”选项卡,因为 Trac 没有可供您浏览的存储库(据它所知)。解决“似乎不是 Git 存储库”问题应该使“浏览”选项卡按预期显示。

如果你能得到 Trac 的日志文件,这个问题会更容易解决。在 Trac 的管理页面上,确保 Trac 设置为记录到文件,日志级别设置为“调试”,并且 Web 服务器使用的用户帐户具有对日志文件文件/文件夹的写入权限。

您提到您正在使用从 0.12 升级到 1.0 的 Trac 安装。升级时,您是否完全禁用并删除了 git 插件?如果您的服务器仍在加载旧插件或其任何配置文件,则认为这会干扰 Trac 的本机 git 支持并非没有道理。

我假设这与您之前在 0.12 中使用的存储库相同?如果没有,请确保您的 Web 服务器的用户帐户有权访问您的 git 存储库所在的文件夹。

您可能还想尝试设置一个新的 Trac 环境(没有插件)并测试它是否可以访问您的存储库。这将消除升级过程可能导致的任何问题。如果需要,您始终可以将所有内容和数据迁移到新环境。

于 2012-11-06T16:28:50.990 回答