hgweb的RSS源能否包含差异信息?

4
RSS订阅是使人们了解存储库中最新更改的非常好的方法。不幸的是,默认的RSS订阅仅在正文中包含提交消息。 这个类似的问题提供了有关如何自定义源的信息,但不幸的是没有提到如何添加差异。这可能吗?我该怎么做?

1
filediff.tmpl,这是在hgweb中显示差异的模板,使用了“{diff}”标签。你试过了吗? - Helgi
@Helgi:我刚试了一下,不幸的是,在生成Atom或RSS订阅时,该属性为空。 :-( - static_rtti
1个回答

2
事实证明,不仅RSS没有将{diff}传递给changelogentry.tmpl,而且RSS模板集本身也缺少一些用于显示差异的模板。
我已经快速粗略地修补了Mercurial RSS模板集,添加了原始差异。该补丁基于Mercurial版本2.2.1。除了模板之外,它还修改了Mercurial源代码(webcommands.py),因此您最终将使用经过修补的Mercurial版本,而不仅仅是模板。
该补丁可以在Bitbucket上我的Hg repo的so-10796514分支中找到。请随意使用。
以下是我电脑上修改后的变更日志的样子:

Screenshot of the RSS changelog with diffs, in Safari

我想从这一点上可以改进。

非常感谢!我会在周一进行测试。您有没有可能将其集成到上游?尽管这只是一个小补丁,但它对其他人也可能非常有用。 - static_rtti
1
@static_rtti:老实说,我不确定。我真的不知道每个 RSS 请求的不同格式对效果是否可接受。我想这可以通过启用或禁用此行为的选项来完成。无论如何,在尝试向上游建议之前,我想先了解补丁的实际使用情况反馈。期待您星期一测试的结果。 - Helgi
1
非常好用,非常感谢!如果能够集成到上游就太好了,但我理解有些人可能不想要。无论如何,至少提供一个选项也是不错的,因为有些人无法承担修补生产mercurial服务器的费用 :) 再次感谢! - static_rtti
1
@static_rtti:不客气。 :) 我会在mercurial-devel上询问关于这个补丁的问题,并在这里写下结果。 - Helgi
关于这个变更被整合到主分支的任何消息吗? - static_rtti

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接