我们可以撤消 Mercurial 中推送的更改吗?

Can we undo pushed changes in Mercurial?

我正在使用 mercurial 并推送了一些我必须还原的更改。我没有找到任何方法直接回滚更改。我可以删除我的更改并将其提交回去,但这不是正确的方法。谁能建议我该怎么做?

您需要登录服务器并使用hg strip命令。如果您无法登录服务器,那您就倒霉了;您可以 hg backout 然后再次推送,但这会在服务器上留下错误的提交以及撤消它们的提交。

更多详情:Mercurial: Remove changeset from remote branch

hg revert -r .^ file-to-revert 后跟 hg commitjf s(如果使用果冻鱼),这将从您的 diff 中删除变更集。