我们正在使用Phabricator执行预提交审核&审计一个多变的回购。 Phabricator 不托管回购,它只观察它。 该项目配置了自动关闭,因此直到最近,在存储库中推送经过验证的审核的所有提交都会自动关闭相关修订。 到目前为止一切都很好。
今天,我们的管理员发现缺少一个php lib并安装它。似乎这个守护者直到现在才“正确”工作。但是,从现在开始,所有现有的评论都已更新,以便第一次提交评审是唯一可以看到的评论。任何新的评论都可以,直到它关闭,Phabricator写道:
Closed by commit R1:a9a9e1153022: doc: update changelog (authored by vsiles). · Explain WhyThu, Sep 7, 5:09 PM
This revision was automatically updated to reflect the committed changes.
(a9a9e1153022
是第一次提交的修订版,但总是如此(iirc)。现在整个评论只显示第一次提交,而不是所有提交。
如果我们转到评论中的“历史记录”标签,我们可以看到Phabricator添加了额外的“差异”,其中包含修订版&在我们推送的所有差异之后,第一次提交的时间戳。这似乎是个问题。如果我们修改历史记录以显示除此之外的所有提交,我们会找回所有评论内容。
目前,我唯一的解决方法是删除“自动关闭”功能,并使用arc close-revision DXX
手动关闭评论。 Phabricator没有更多的自动步骤可以解决问题,并且Phabricator不会产生额外的差异。
有人可以解释为什么Phabricator认为审核是由第一次提交关闭的,这似乎是问题所在吗?
答案 0 :(得分:0)
Phabricator的推荐工作流程是使用.mygridStyle Line {
-fx-stroke : red;
}
来推送和关闭修订版。使用mercurial直接推送可能没有预期的结果,因为mercurial不了解差异修订版本,并且Phabricator守护程序会在事后重建修改和提交之间的链接。