首页 文章

在Phabricator中撤消最后一个差异

提问于
浏览
8

我在Phabricator(使用Git)中有一个开放式修订版,我使用 arc diff 命令向此修订版提交了一个diff .

问题是这个差异是坏的,所以我想撤消它并回到之前的差异 .

你知道我该怎么办?

3 回答

  • 2

    免责声明:我的Git经验有限,目前我正在使用带有SVN的Phabricator .

    假设您没有其他本地更改,则可以还原您的工作副本,然后 arc patch --diff <diff_id> ,其中diff ID显示在 Revision Update History 表的ID列中 . 然后像往常一样 arc diff --revision <rev_id> 进行更新 . 我认为它在技术上不是删除,但它与伪修订控制一起使用 . 将跟踪错误和更正 .

  • 3

    我经常犯错误分歧错误的分支 .

    第一步是撤消差异 . 我们不能从修订历史中删除差异,但我们可以恢复它 .

    $ arc patch --diff <diff_id> # last good diff
    $ arc diff --update <revision_id> <branch> # "reverts" the offending diffs to the current state
    

    此时,您的修订版已恢复到原始状态 . 如果你想再次执行差异,那么就做你通常做的事情 . Checkout the branch 具有针对diff的更改,然后是 perform the diff .

    $ git checkout <new_branch>
    $ arc diff <source_branch> # new_branch has changes that is intended to be merged into source_branch
    

    归功于列出大部分步骤的altendky . 但是,他引用的 revision 标志不再存在,我也希望更清楚地列出这些步骤 .

  • 5

    目前不支持此功能 . 您可以通过遵循altendky建议的过程或任何类似的过程(即,再次运行 arc diff 并使您的工作副本处于正确状态)来替换坏差异与新的良好差异 .

    这是我们打算最终添加的功能 . 您可以在此处关注上游的进度:

    https://secure.phabricator.com/T1081(已关闭,因为无法修复)

相关问题