在过去,我非常喜欢使用Trac和我自己的一些服务器上托管的subversion存储库.集成的票务和在线代码浏览非常方便.
我已经在我的一些公共项目中使用了github,但是我没有钱来支付额外的服务,特别是当我已经支付远程VPS主机时.
有没有人知道或有任何使用git版本控制设置Trac的经验?具体来说,我已经可以推送到远程服务器但我希望有一些Web界面允许我(以及与我一起工作的人)在不使项目公开的情况下在线查看代码库的提交和当前状态.我知道GitPlugin但是无法启动并成功运行.还有其他建议吗?
需要集成的票务(和维基),但不是绝对必要的.
编辑:
在使用GitPlugin和Trac后,我已经能够启动并运行.主要问题是我需要通过在trac.ini中执行类似的操作来显式启用trac环境的插件:
[components] # for version 0.10 gitplugin.* = enabled # for version 0.11 tracext.git.* = enabled
我也可以尝试使用Redmine和CGit,因为这看起来像是我正在寻找的其他软件.欢迎任何其他建议.
你应该看看Redmine(http://www.redmine.org/).它具有您提到的所有功能以及更多功能.你可以在你自己的vps(我这样做)上托管它.
我们使用Trac和两个Git插件--GitPlugin以及GitWebPlugin.看,我们实际上有三个存储库(长篇故事),Trac仍然只限于一个存储库.所以,我编写了自己的插件,定义了wiki语法(实际上是宏),用于引用存储库,分支或提交,以及这些链接到GitWebPlugin链接.我还能够编写一些git钩子脚本,以便我们可以在提交消息中引用,关闭或修改Trac票证 - 它是Trac附带的SVN提交钩子的修改版本.
GitPlugin的主要问题是由于缺少"libgit"库而导致它很慢.这对于中小型项目来说并不坏,但大项目是一件痛苦的事.如果你真的需要一个快速的网络界面,你应该看看Cgit.Cgit使它成为自己的libgit,因此它与特定版本的Git绑定.
然而,事实是,除非您想向某人发送链接(如电子邮件或IRC),否则基于Web的Git视图并不是那么有用.因为使用Git,你在每个克隆中都拥有完整的存储库,所以你最好使用类似gitk
甚至普通的工具git log
.查询和grepping功能真的很棒,而且(显然)很快.我发现Cgit和GitWeb实际上只对发送提交链接很有用,而且非常罕见.
提示:获得Trac票务功能的一种完全不同的方式是ditz.
"Ditz是一款简单,轻量级的分布式问题跟踪器,专为与git,darcs,Mercurial和Bazaar等分布式版本控制系统配合使用而设计."
您的票证与您的代码一起存在.失去一个并拥有另一个是不可能的; 这是件好事.类似Trac的网站由ditz
命令行工具生成.
我很享受.
Assembla免费提供维基,门票和其他东西,并允许 Github集成.如果你不想使用Github,你可以使用带有Assembla的普通 Git(包含你在任何其他项目中获得的所有好东西).
定价也很便宜("每个团队成员每月2美元").