列出 phabricator 中的所有预览差异

List all the preview diffs in phabricator

有没有办法在 Phabricator 中列出所有预览差异? 也就是说,我使用 arc diff --preview 创建了一个 diff,但丢失了 diff URL 的踪迹,并且丢失了随之而来的原始本地 git 提交。我想使用 arc patch --diff 重新生成它们,但我不知道差异编号

arc diff 预览不适用于存储提交供以后使用。只需创建一个修订版,不要分配给任何人,这是完全相同的事情。

您无法通过 UI 执行任何操作来恢复这些内容,因为这绝不是 --preview 的意图。如果您有权访问数据库,则可以进入 *_user.user 找到您的用户 phid,然后进入 *_differential.differential_diff table 和 select 所有具有此 PHID 的用户。或者让您的 DBA 运行 为您准备。

SELECT * 
FROM phabricator_differential.differential_diff 
WHERE authorPhid 
IN (
    SELECT phid 
    FROM phabricator_user.user 
    WHERE username = 'Kirby'
   )
AND revisionID IS NULL;

从该列表的 id 列中,您可以在以下 url 处访问您的差异。 https://phabricator.com/differential/diff/{id}/.

这是一个非常古老的上游票据,可能是为 UI https://secure.phabricator.com/T1084 添加更好的差异支持的一部分。不过,我对此一直没有太大兴趣,所以我不认为它会在明年得到支持,除非你的公司或你自己愿意付钱给他们。