version-control - 如何在 Mercurial 中撤消一个或多个变更集的内容?

标签 version-control mercurial

我有一些几个月前的变更集,我从一个单元测试框架转换为另一个单元测试框架。 (不要问)我决定我不喜欢新框架,并且想恢复使用旧框架。

我并不想真正从我的存储库中删除有问题的变更集——我只是想要一个能够撤消之前的一个或多个变更集所做操作的变更集。

当我使用 svn 时,有一个 TortoiseSVN 命令可以执行此操作,它将一组提交“反向 merge ”到工作副本中。

Mercurial 是否具有开箱即用的此类功能,或者我是否可以与 Beyond Compare 一起度过一个有趣的夜晚?

最佳答案

您正在寻找hg backout。来自 mercurial documentation :

Backout works by applying a changeset that's the opposite of the changeset to be backed out. That new changeset is committed to the repository, and eventually merged.

您想用特定的修订版本来调用它。例如,要撤销修订号为 3 的修订,请运行 hg backout -r 3

关于version-control - 如何在 Mercurial 中撤消一个或多个变更集的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14088563/

相关文章:

mercurial - hg 显示已修改但未更改的文件,为什么会这样?

Git Sourcetree Master 2 落后

mercurial - 如果 Mercurial 中存在未提交的子存储库更改,如何使 "commit"中止?

Mercurial 推送关闭的分支

c# - 不属于 Windows 组或事件目录的人将如何访问 TFS 项目?

c++ - 构建 obj 和 exe 文件的最佳目录结构是什么?

python - 使用 Mercurial 克隆时 SSL 包装器出错

Github pull 请求显示太多更改/提交

git - 如何从现有 git 存储库中的文件夹创建新的 git 存储库?

version-control - 用于版本维护的 TFS