简单场景:我想在推送之前访问一次变更集,并将文件差异信息(以通常的 git diff 格式..或任何其他 base64 可序列化格式)发送到我自己的 RESTful Web 服务进行检查。我已经有一个 pretxnchangegroup 挂钩设置.. 我可以访问节点,但hg export
不显示任何新内容(因为它们可能被隐藏,如下所述:如何根据脚本拒绝推送到 Mercurial 服务器,而不冒风险在那段时间拉不好?),所以我想我必须通过 Mercurial API。
问题:我没有“了解”如何从钩子中的 Mercurial API 以某种文本差异格式(git diff,等等)轻松访问文件更改信息,API 文档中似乎没有任何内容:https ://www.mercurial-scm.org/wiki/MercurialApi
只是我还是这种“潜入 Mercurial 代码库”的无人区?想避免挖这么深,但如果有必要我会的。