我在Phabricator(使用Git)中有一个开放式修订版,我使用 arc diff 命令向此修订版提交了一个diff .
arc diff
问题是这个差异是坏的,所以我想撤消它并回到之前的差异 .
你知道我该怎么办?
免责声明:我的Git经验有限,目前我正在使用带有SVN的Phabricator .
假设您没有其他本地更改,则可以还原您的工作副本,然后 arc patch --diff <diff_id> ,其中diff ID显示在 Revision Update History 表的ID列中 . 然后像往常一样 arc diff --revision <rev_id> 进行更新 . 我认为它在技术上不是删除,但它与伪修订控制一起使用 . 将跟踪错误和更正 .
arc patch --diff <diff_id>
Revision Update History
arc diff --revision <rev_id>
我经常犯错误分歧错误的分支 .
第一步是撤消差异 . 我们不能从修订历史中删除差异,但我们可以恢复它 .
$ 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 标志不再存在,我也希望更清楚地列出这些步骤 .
revision
目前不支持此功能 . 您可以通过遵循altendky建议的过程或任何类似的过程(即,再次运行 arc diff 并使您的工作副本处于正确状态)来替换坏差异与新的良好差异 .
这是我们打算最终添加的功能 . 您可以在此处关注上游的进度:
https://secure.phabricator.com/T1081(已关闭,因为无法修复)
3 回答
免责声明:我的Git经验有限,目前我正在使用带有SVN的Phabricator .
假设您没有其他本地更改,则可以还原您的工作副本,然后
arc patch --diff <diff_id>
,其中diff ID显示在Revision Update History
表的ID列中 . 然后像往常一样arc diff --revision <rev_id>
进行更新 . 我认为它在技术上不是删除,但它与伪修订控制一起使用 . 将跟踪错误和更正 .我经常犯错误分歧错误的分支 .
第一步是撤消差异 . 我们不能从修订历史中删除差异,但我们可以恢复它 .
此时,您的修订版已恢复到原始状态 . 如果你想再次执行差异,那么就做你通常做的事情 . Checkout the branch 具有针对diff的更改,然后是 perform the diff .
归功于列出大部分步骤的altendky . 但是,他引用的
revision
标志不再存在,我也希望更清楚地列出这些步骤 .目前不支持此功能 . 您可以通过遵循altendky建议的过程或任何类似的过程(即,再次运行
arc diff
并使您的工作副本处于正确状态)来替换坏差异与新的良好差异 .这是我们打算最终添加的功能 . 您可以在此处关注上游的进度:
https://secure.phabricator.com/T1081(已关闭,因为无法修复)