有没有办法记录Mercurial中发生的一切?

时间:2014-01-14 18:15:09

标签: mercurial

我需要记录一些存储库中发生的所有事情。默认情况下,我可以保留合并和提交的记录,但我需要克隆,拉取,身份验证等记录。

有没有办法让它记录在某个地方?

2 个答案:

答案 0 :(得分:1)

克隆,提取和身份验证不是存储库历史或状态的一部分 - Mercurial故意不会跟踪或推送所有这些数据。

实际上,Mercurial本身并不处理这种行为,它会将此(特别是身份验证)卸载到处理此类请求的Web服务器上。您可以做的是查看服务器记录的日志。如何跟踪它是特定于服务器的,但基本上你会查看访问日志并查看请求的内容。

Mercurial提供了一个轻量级Web服务器hg serve来处理有限数量的请求,您可以配置此服务器使用-A-E写入访问和错误日​​志的位置标志分别。有关详情,请参阅hg help serve

你可以使用Mercurial的hooks并且可能通过该方法记录克隆和拉取,但是对Mercurial的身份验证是完全透明的,因此必须来自服务器的记录。

答案 1 :(得分:0)

人们如何访问存储库。如果它超过ssh,您可以轻松记录通过ssh进入的命令行。如果它是通过HTTP,你可以使用你的博客作为一个非常公平的记录。

Mozilla有一个开源'pushlog'(例如:https://hg.mozilla.org/mozilla-central/pushloghtml),用于记录所有写入。您可以轻松地调整该代码以记录所有读取。